From a9b41afb9d12e69354a28dc740aabd30dec7c632 Mon Sep 17 00:00:00 2001 From: dgelessus <dgelessus@users.noreply.github.com> Date: Tue, 30 Jul 2024 14:44:37 +0200 Subject: [PATCH] Refactor TracePrinter construction --- src/main/java/de/tlc4b/tlc/TLCResults.java | 13 +++++++------ src/main/java/de/tlc4b/tlc/TracePrinter.java | 10 ---------- 2 files changed, 7 insertions(+), 16 deletions(-) diff --git a/src/main/java/de/tlc4b/tlc/TLCResults.java b/src/main/java/de/tlc4b/tlc/TLCResults.java index a8c4e42..3578220 100644 --- a/src/main/java/de/tlc4b/tlc/TLCResults.java +++ b/src/main/java/de/tlc4b/tlc/TLCResults.java @@ -9,6 +9,7 @@ import tlc2.output.MP; import tlc2.output.Message; import tlc2.output.OutputCollector; import tlc2.tool.BuiltInOPs; +import tlc2.tool.TLCState; import tlc2.tool.TLCStateInfo; import tlc2.tool.ToolGlobals; @@ -179,13 +180,13 @@ public class TLCResults implements ToolGlobals { private void evalTrace() { List<TLCStateInfo> trace = OutputCollector.getTrace(); - TracePrinter printer = null; - if (!trace.isEmpty()) { - printer = new TracePrinter(trace, tlcOutputInfo); - } else if (OutputCollector.getInitialState() != null) { - printer = new TracePrinter(OutputCollector.getInitialState(), tlcOutputInfo); + TLCState initialState = OutputCollector.getInitialState(); + if (trace.isEmpty() && initialState != null) { + trace = Collections.singletonList(new TLCStateInfo(initialState)); } - if (printer != null) { + + if (!trace.isEmpty()) { + TracePrinter printer = new TracePrinter(trace, tlcOutputInfo); traceString = printer.getTrace().toString(); } } diff --git a/src/main/java/de/tlc4b/tlc/TracePrinter.java b/src/main/java/de/tlc4b/tlc/TracePrinter.java index c3dcfb9..6e5fd3e 100644 --- a/src/main/java/de/tlc4b/tlc/TracePrinter.java +++ b/src/main/java/de/tlc4b/tlc/TracePrinter.java @@ -31,10 +31,6 @@ public class TracePrinter { this.trace = trace; this.tlcOutputInfo = tlcOutputInfo; - setup(); - } - - private void setup() { constants = new ArrayList<>(); variables = new ArrayList<>(); for (int i = 0; i < TLCState.vars.length; i++) { @@ -49,12 +45,6 @@ public class TracePrinter { evalTrace(); } - public TracePrinter(TLCState initialState, TLCOutputInfo tlcOutputInfo) { - this.initialState = initialState; - this.tlcOutputInfo = tlcOutputInfo; - setup(); - } - public StringBuilder getTrace() { return traceBuilder; } -- GitLab