From 78ab86c8c2ae1b9c175c8f20dfc1789a639d239c Mon Sep 17 00:00:00 2001 From: hansen <dominik_hansen@web.de> Date: Tue, 27 May 2014 20:27:50 +0200 Subject: [PATCH] Fixed a bug in the TracePrinter --- src/main/java/de/tlc4b/Translator.java | 2 +- src/main/java/de/tlc4b/tlc/TLCOutputInfo.java | 8 ++++++-- src/main/java/de/tlc4b/tlc/TracePrinter.java | 10 +++++++--- .../java/de/tlc4b/tlc/integration/SpecialTest.java | 2 -- 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/main/java/de/tlc4b/Translator.java b/src/main/java/de/tlc4b/Translator.java index 5ee1456..911a863 100644 --- a/src/main/java/de/tlc4b/Translator.java +++ b/src/main/java/de/tlc4b/Translator.java @@ -153,7 +153,7 @@ public class Translator { configString = printer.getConfigString().toString(); tlcOutputInfo = new TLCOutputInfo(machineContext, renamer, - typechecker, generator.getTlaModule()); + typechecker, generator.getTlaModule(), generator.getConfigFile()); } public String getMachineString() { diff --git a/src/main/java/de/tlc4b/tlc/TLCOutputInfo.java b/src/main/java/de/tlc4b/tlc/TLCOutputInfo.java index 69e2371..6be0cea 100644 --- a/src/main/java/de/tlc4b/tlc/TLCOutputInfo.java +++ b/src/main/java/de/tlc4b/tlc/TLCOutputInfo.java @@ -10,7 +10,10 @@ import de.tlc4b.analysis.MachineContext; import de.tlc4b.analysis.Renamer; import de.tlc4b.analysis.Typechecker; import de.tlc4b.btypes.BType; +import de.tlc4b.tla.ConfigFile; import de.tlc4b.tla.TLAModule; +import de.tlc4b.tla.config.ConfigFileAssignment; +import de.tlc4b.tla.config.ModelValueAssignment; public class TLCOutputInfo { @@ -45,7 +48,7 @@ public class TLCOutputInfo { } public TLCOutputInfo(MachineContext machineContext, Renamer renamer, - Typechecker typechecker, TLAModule tlaModule) { + Typechecker typechecker, TLAModule tlaModule, ConfigFile configFile) { this.namesMapping = new Hashtable<String, String>(); this.typesTable = new Hashtable<String, BType>(); @@ -60,7 +63,8 @@ public class TLCOutputInfo { identifiers.putAll(machineContext.getConstants()); identifiers.putAll(machineContext.getVariables()); identifiers.putAll(machineContext.getEnumValues()); - + //TODO add sets of modelvalues + for (Entry<String, Node> entry : identifiers.entrySet()) { String name = entry.getKey(); diff --git a/src/main/java/de/tlc4b/tlc/TracePrinter.java b/src/main/java/de/tlc4b/tlc/TracePrinter.java index 9260f4d..4bf91aa 100644 --- a/src/main/java/de/tlc4b/tlc/TracePrinter.java +++ b/src/main/java/de/tlc4b/tlc/TracePrinter.java @@ -7,6 +7,7 @@ import de.tlc4b.btypes.FunctionType; import de.tlc4b.btypes.PairType; import de.tlc4b.btypes.SetType; import de.tlc4b.btypes.StructType; +import de.tlc4b.exceptions.NotSupportedException; import tla2sany.semantic.OpDeclNode; import tlc2.tool.TLCState; import tlc2.tool.TLCStateInfo; @@ -185,7 +186,7 @@ public class TracePrinter { } } - return null; + throw new NotSupportedException("Unkown type of tuple."); case RECORDVALUE: { RecordValue rec = (RecordValue) val; @@ -223,8 +224,11 @@ public class TracePrinter { case MODELVALUE: ModelValue modelValue = (ModelValue) val; - String BName = tlcOutputInfo.getBName(modelValue.toString()); - res.append(BName); + String bName = tlcOutputInfo.getBName(modelValue.toString()); + if(bName == null){ + bName = modelValue.toString(); + } + res.append(bName); return res; case SETOFTUPLESVALUE: { diff --git a/src/test/java/de/tlc4b/tlc/integration/SpecialTest.java b/src/test/java/de/tlc4b/tlc/integration/SpecialTest.java index 180a913..a078bd7 100644 --- a/src/test/java/de/tlc4b/tlc/integration/SpecialTest.java +++ b/src/test/java/de/tlc4b/tlc/integration/SpecialTest.java @@ -33,7 +33,6 @@ public class SpecialTest { assertEquals(NoError, test(a)); } - @Test public void testConstantSetupFile2() throws Exception { String[] a = new String[] { @@ -49,7 +48,6 @@ public class SpecialTest { assertEquals(Deadlock, test(a)); } - @Test public void testDefinitionsLoad() throws Exception { String[] a = new String[] { -- GitLab