From 940df2204c4bddc5eb1e43c3947798168a1519b5 Mon Sep 17 00:00:00 2001 From: Willem Date: Fri, 17 Jan 2025 02:02:22 +0100 Subject: [PATCH] Added little bit of documentation and made display embedded lazy --- .../main/java/org/x4o/fc18/FourCornerUnicodeDisplay.java | 6 ++++-- .../java/org/x4o/fc18/zion7/FourCornerZion7Candlelier.java | 6 +++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/FourCornerUnicodeDisplay.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/FourCornerUnicodeDisplay.java index 1a1ee91..823795e 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/FourCornerUnicodeDisplay.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/FourCornerUnicodeDisplay.java @@ -135,12 +135,11 @@ public class FourCornerUnicodeDisplay { private final class StenoUnicodePrinter implements FourCornerZion7Candlelier, FourCornerZionStenoLexerSmoke.Adapter { private final StringBuilder output; - private final FourCornerZionStenoLexer thisDisplayEscaked; + private FourCornerZionStenoLexer thisDisplayEscaked = null; private boolean wasExternalWord = false; private StenoUnicodePrinter(StringBuilder output) { this.output = Objects.requireNonNull(output); - this.thisDisplayEscaked = new FourCornerZionStenoLexer(this, true); } private boolean printedEscape(FourCornerDotCake slice, int offset) { @@ -246,6 +245,9 @@ public class FourCornerUnicodeDisplay { @Override public void strobeRecursiveCake(List cakePoints) { + if (thisDisplayEscaked == null) { + thisDisplayEscaked = new FourCornerZionStenoLexer(this, true); + } thisDisplayEscaked.read(cakePoints); } diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7Candlelier.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7Candlelier.java index 8a30c61..579e72e 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7Candlelier.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7Candlelier.java @@ -36,15 +36,19 @@ public interface FourCornerZion7Candlelier { /// Block of relative slice numbers. void strobeWords(FourCornerDotCake slice, List offsets); + /// Single word from slice. void strobeWord(FourCornerDotCake slice, int offset); - /// One based already + /// 576 bit fraction for numbers. void strobeNCR1632(BigInteger denominator, BigInteger numerator); + /// To support current code and resources which require unicode to access. void strobeUnicode(List codePoints); + /// Allows a 6 bit computer to use the nether,fractions or unicode. void strobeRecursiveCake(List cakePoints); + /// Dark octal data, with up to 576 bit mime-type data type header. void strobeNether(List key, List octals); interface Adapter extends FourCornerZion7Candlelier {