diff options
| author | Cliff Click <cliffc@acm.org> | 2025-05-08 13:38:45 -0700 |
|---|---|---|
| committer | Cliff Click <cliffc@acm.org> | 2025-05-08 13:38:45 -0700 |
| commit | f1c1c070f0491cba8b18f3169e72e9a1df8f1a2a (patch) | |
| tree | d6b3a7c903daf0d3f953e40f877030d86b690377 /chapter22/src/main/java | |
| parent | a174b75edab35f078455b4b9a737f383a3be55a3 (diff) | |
| download | Simple-f1c1c070f0491cba8b18f3169e72e9a1df8f1a2a.tar.gz Simple-f1c1c070f0491cba8b18f3169e72e9a1df8f1a2a.zip | |
Work on a cmd-line driver for Simple
Diffstat (limited to 'chapter22/src/main/java')
3 files changed, 4 insertions, 3 deletions
diff --git a/chapter22/src/main/java/com/seaofnodes/simple/type/TypeConAry.java b/chapter22/src/main/java/com/seaofnodes/simple/type/TypeConAry.java index 8a19c9d7..29496af6 100644 --- a/chapter22/src/main/java/com/seaofnodes/simple/type/TypeConAry.java +++ b/chapter22/src/main/java/com/seaofnodes/simple/type/TypeConAry.java @@ -51,7 +51,7 @@ public class TypeConAry<A> extends Type { } return TypeInteger.make(min,max); } - long at(int idx) { throw Utils.TODO(); } + public long at(int idx) { throw Utils.TODO(); } public int len() { throw Utils.TODO(); } @Override public int alignment() { return 0; } public void write( ByteArrayOutputStream baos ) { throw Utils.TODO(); } diff --git a/chapter22/src/main/java/com/seaofnodes/simple/type/TypeConAryB.java b/chapter22/src/main/java/com/seaofnodes/simple/type/TypeConAryB.java index 34475ac1..c057c6a5 100644 --- a/chapter22/src/main/java/com/seaofnodes/simple/type/TypeConAryB.java +++ b/chapter22/src/main/java/com/seaofnodes/simple/type/TypeConAryB.java @@ -11,7 +11,7 @@ public class TypeConAryB extends TypeConAry<byte[]> { 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 long at(int idx) { return _ary[idx]; } + @Override public long at(int idx) { return _ary[idx]; } @Override public int len() { return _ary.length; } @Override public int alignment() { return 0; } @Override public String str() { return "[\""+new String(_ary)+"\"]"; } diff --git a/chapter22/src/main/java/com/seaofnodes/simple/type/TypeStruct.java b/chapter22/src/main/java/com/seaofnodes/simple/type/TypeStruct.java index 827e85f0..66a37d41 100644 --- a/chapter22/src/main/java/com/seaofnodes/simple/type/TypeStruct.java +++ b/chapter22/src/main/java/com/seaofnodes/simple/type/TypeStruct.java @@ -241,7 +241,8 @@ public class TypeStruct extends Type { public SB print(SB sb) { if( _con!=TypeConAry.BOT ) return sb.p(_con.str()); sb.p(_name); - if( _fields == null || isAry() ) return sb; // Forward reference struct, just print the name + if( _fields == null || isAry() ) // Forward reference struct, just print the name + return sb.p(isFinal() ? "" : "!"); sb.p(" {"); for( Field f : _fields ) f._type.print(sb).p(f._final ? " " : " !").p(f._fname).p("; "); |
