From f1c1c070f0491cba8b18f3169e72e9a1df8f1a2a Mon Sep 17 00:00:00 2001 From: Cliff Click Date: Thu, 8 May 2025 13:38:45 -0700 Subject: Work on a cmd-line driver for Simple --- chapter22/src/main/java/com/seaofnodes/simple/type/TypeConAry.java | 2 +- chapter22/src/main/java/com/seaofnodes/simple/type/TypeConAryB.java | 2 +- chapter22/src/main/java/com/seaofnodes/simple/type/TypeStruct.java | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) (limited to 'chapter22/src/main/java') 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 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 { static final TypeConAryB ABC = make("abc"); static final TypeConAryB ABCD = make("abcd"); public static void gather(ArrayList 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("; "); -- cgit v1.2.3