From 7e5fb36da00e41891242fb5c5508ee913846219e Mon Sep 17 00:00:00 2001 From: hansen <dominik_hansen@web.de> Date: Tue, 13 May 2014 16:03:01 +0200 Subject: [PATCH] updated type printer --- src/main/java/de/tla2b/output/TlaTypePrinter.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/main/java/de/tla2b/output/TlaTypePrinter.java b/src/main/java/de/tla2b/output/TlaTypePrinter.java index c6a5dde..d3e4f41 100644 --- a/src/main/java/de/tla2b/output/TlaTypePrinter.java +++ b/src/main/java/de/tla2b/output/TlaTypePrinter.java @@ -108,9 +108,11 @@ public class TlaTypePrinter implements PositionPrinter, TypeVisitorInterface { } public void casePairType(PairType type) { - pout.openTerm("couple", true); + pout.openTerm("tuple"); + pout.openList(); type.getFirst().apply(this); type.getSecond().apply(this); + pout.closeList(); pout.closeTerm(); } @@ -129,11 +131,18 @@ public class TlaTypePrinter implements PositionPrinter, TypeVisitorInterface { } public void caseStructType(StructType type) { - pout.openTerm("struct"); + pout.openTerm("record"); pout.openList(); ArrayList<String> fields = type.getFields(); for (String field : fields) { + if (type.isExtensible()) { + pout.openTerm("opt"); + } else { + pout.openTerm("field"); + } + pout.printAtom(field); type.getType(field).apply(this); + pout.closeTerm(); } pout.closeList(); pout.closeTerm(); -- GitLab