diff options
Diffstat (limited to 'chapter23/src')
3 files changed, 9 insertions, 13 deletions
diff --git a/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAry.java b/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAry.java index d4003f87..84cccd12 100644 --- a/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAry.java +++ b/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAry.java @@ -1,6 +1,5 @@ package com.seaofnodes.simple.type; -import com.seaofnodes.simple.util.SB; import com.seaofnodes.simple.util.Utils; import java.io.ByteArrayOutputStream; import java.util.ArrayList; @@ -13,18 +12,19 @@ public class TypeConAry<A> extends Type { // One of byte,short,int,long,float,double array public final A _ary; - TypeConAry( boolean any, byte type, A ary ) { super(type); _any = any; _ary = ary; } - public static final TypeConAry BOT = new TypeConAry(false, TINT, null).intern(); + TypeConAry( boolean any, A ary ) { super(TINT); _any = any; _ary = ary; } + public static final TypeConAry BOT = new TypeConAry(false,null).intern(); public static void gather(ArrayList<Type> ts) { ts.add(BOT); - TypeConAryB.gather(ts); - TypeConAryI.gather(ts); + ts.add(TypeConAryB.ABC); + ts.add(TypeConAryB.ABCD); + ts.add(TypeConAryI.I123); } @Override public String str() { return (_any?"~":"") + "[]"; } @Override TypeConAry xdual() { if( _ary==null ) - return new TypeConAry(!_any,_type,null); + return new TypeConAry(!_any,null); return this; } diff --git a/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAryB.java b/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAryB.java index 9e5f0a2d..75f08bef 100644 --- a/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAryB.java +++ b/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAryB.java @@ -1,16 +1,14 @@ package com.seaofnodes.simple.type; -import java.util.ArrayList; import java.util.Arrays; import java.io.ByteArrayOutputStream; public class TypeConAryB extends TypeConAry<byte[]> { - private TypeConAryB(byte[] bs) { super(false,TINT,bs); } + private TypeConAryB(byte[] bs) { super(false,bs); } public static TypeConAryB make( byte[] bs ) { return new TypeConAryB(bs).intern(); } public static TypeConAryB make( String s ) { return make(s.getBytes()); } static final TypeConAryB ABC = make("abc"); static final TypeConAryB ABCD = make("abcd"); - public static void gather(ArrayList<Type> ts) { ts.add(ABC); ts.add(ABCD); } @Override public long at8(int idx) { return _ary[idx]; } @Override public int len() { return _ary.length; } @Override public int log_size() { return 0; } diff --git a/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAryI.java b/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAryI.java index 924e3d73..577de82c 100644 --- a/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAryI.java +++ b/chapter23/src/main/java/com/seaofnodes/simple/type/TypeConAryI.java @@ -1,13 +1,11 @@ package com.seaofnodes.simple.type; -import java.util.ArrayList; import java.util.Arrays; public class TypeConAryI extends TypeConAry<int[]> { - private TypeConAryI(int[] bs) { super(false,TINT,bs); } + private TypeConAryI(int[] bs) { super(false,bs); } public static TypeConAryI make( int[] bs ) { return new TypeConAryI(bs).intern(); } - private static final TypeConAryI I123 = make(new int[]{1,2,3}); - public static void gather(ArrayList<Type> ts) { ts.add(I123); } + static final TypeConAryI I123 = make(new int[]{1,2,3}); @Override public long at8(int idx) { return _ary[idx]; } @Override public int len() { return _ary.length; } @Override public int log_size() { return 2; } |
