From 44719c3ac6c5decf15e7a6bab5045c971a5bd689 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Sat, 12 Oct 2019 14:12:14 -0400 Subject: Swap tests to using compilation. Tests now the compilation feature, so that is being tested thoroughly. Now to get to going through and switching all the directives that use strings to use CLStrings instead --- .../src/main/java/bjc/utils/ioutils/format/CLFormatter.java | 12 +++++++++++- .../src/main/java/bjc/utils/ioutils/format/CLString.java | 8 ++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) (limited to 'clformat/src/main/java/bjc') diff --git a/clformat/src/main/java/bjc/utils/ioutils/format/CLFormatter.java b/clformat/src/main/java/bjc/utils/ioutils/format/CLFormatter.java index 86ffd54..3599d9e 100644 --- a/clformat/src/main/java/bjc/utils/ioutils/format/CLFormatter.java +++ b/clformat/src/main/java/bjc/utils/ioutils/format/CLFormatter.java @@ -371,7 +371,15 @@ public class CLFormatter { } } - public void compile(Iterator cltok) { + public CLString compile(String inp) { + CLTokenizer tokenzer = new CLTokenizer(inp); + + List edts = compile(tokenzer); + + return new CLString(edts); + } + + public List compile(Iterator cltok) { List result = new ArrayList<>(); while (cltok.hasNext()) { @@ -458,5 +466,7 @@ public class CLFormatter { throw new IllegalArgumentException(msg); } } + + return result; } } diff --git a/clformat/src/main/java/bjc/utils/ioutils/format/CLString.java b/clformat/src/main/java/bjc/utils/ioutils/format/CLString.java index 74e4960..7b533d0 100644 --- a/clformat/src/main/java/bjc/utils/ioutils/format/CLString.java +++ b/clformat/src/main/java/bjc/utils/ioutils/format/CLString.java @@ -33,8 +33,12 @@ public class CLString { FormatContext formCTX = new FormatContext(rw, itms); - for (Edict edt : edicts) { - edt.format(formCTX); + try { + for (Edict edt : edicts) { + edt.format(formCTX); + } + } catch (EscapeException eex) { + // General escape exception, so stop formatting. } return rw.toString(); -- cgit v1.2.3