From 0f32001b466def0cee753557ad6e296cf15e2504 Mon Sep 17 00:00:00 2001 From: Cliff Click Date: Wed, 23 Sep 2026 16:35:50 -0700 Subject: Keyboard shortcuts Fast forward/reverse, pick-a-frame. Shorter type names. --- chapter11/src/main/java/com/seaofnodes/simple/type/TypeMem.java | 2 ++ .../src/main/java/com/seaofnodes/simple/type/TypeMemPtr.java | 4 ++++ .../src/main/java/com/seaofnodes/simple/type/TypeStruct.java | 8 +++++++- 3 files changed, 13 insertions(+), 1 deletion(-) (limited to 'chapter11/src') diff --git a/chapter11/src/main/java/com/seaofnodes/simple/type/TypeMem.java b/chapter11/src/main/java/com/seaofnodes/simple/type/TypeMem.java index f4caf56f..b6fc8824 100644 --- a/chapter11/src/main/java/com/seaofnodes/simple/type/TypeMem.java +++ b/chapter11/src/main/java/com/seaofnodes/simple/type/TypeMem.java @@ -53,6 +53,8 @@ public class TypeMem extends Type { @Override public StringBuilder print(StringBuilder sb) { + if( this==BOT ) return sb.append("MemBot"); + if( this==TOP ) return sb.append("MemTop"); return sb.append("MEM#").append( switch(_alias) { case 0 -> "TOP"; case -1 -> "BOT"; diff --git a/chapter11/src/main/java/com/seaofnodes/simple/type/TypeMemPtr.java b/chapter11/src/main/java/com/seaofnodes/simple/type/TypeMemPtr.java index ffedbabc..6c874a93 100644 --- a/chapter11/src/main/java/com/seaofnodes/simple/type/TypeMemPtr.java +++ b/chapter11/src/main/java/com/seaofnodes/simple/type/TypeMemPtr.java @@ -64,12 +64,16 @@ public class TypeMemPtr extends Type { // [void,name,MANY]*[,?] @Override public StringBuilder print(StringBuilder sb) { + if( this==BOT ) return sb.append("PtrBot"); + if( this==TOP ) return sb.append("PtrTop"); if( this== NULLPTR) return sb.append("null"); if( this== VOIDPTR) return sb.append("*void"); return _obj.print(sb.append("*")).append(_nil ? "?" : ""); } @Override public String str() { + if( this==BOT ) return "PtrBot"; + if( this==TOP ) return "PtrTop"; if( this== NULLPTR) return "null"; if( this== VOIDPTR) return "*void"; return "*"+_obj.str()+(_nil ? "?" : ""); diff --git a/chapter11/src/main/java/com/seaofnodes/simple/type/TypeStruct.java b/chapter11/src/main/java/com/seaofnodes/simple/type/TypeStruct.java index 6c837919..44741def 100644 --- a/chapter11/src/main/java/com/seaofnodes/simple/type/TypeStruct.java +++ b/chapter11/src/main/java/com/seaofnodes/simple/type/TypeStruct.java @@ -108,6 +108,8 @@ public class TypeStruct extends Type { @Override public StringBuilder print(StringBuilder sb) { + if( this==BOT ) return sb.append("StructBot"); + if( this==TOP ) return sb.append("StructTop"); sb.append(_name).append(" {\n"); for( Field f : _fields ) { sb.append(" ").append(f._fname).append(":"); @@ -117,5 +119,9 @@ public class TypeStruct extends Type { return sb.append("}"); } - @Override public String str() { return _name; } + @Override public String str() { + if( this==BOT ) return "StructBot"; + if( this==TOP ) return "StructTop"; + return _name; + } } -- cgit v1.2.3