Skip to content
Snippets Groups Projects
Commit 4465de7b authored by hansen's avatar hansen
Browse files

Fixed bug in AST creator

parent ad7f9eb4
Branches
Tags
No related merge requests found
......@@ -59,6 +59,7 @@ import de.be4.classicalb.core.parser.node.ALambdaExpression;
import de.be4.classicalb.core.parser.node.ALessEqualPredicate;
import de.be4.classicalb.core.parser.node.ALessPredicate;
import de.be4.classicalb.core.parser.node.AMachineHeader;
import de.be4.classicalb.core.parser.node.AMachineMachineVariant;
import de.be4.classicalb.core.parser.node.AMemberPredicate;
import de.be4.classicalb.core.parser.node.AMinusOrSetSubtractExpression;
import de.be4.classicalb.core.parser.node.AMultOrCartExpression;
......@@ -132,6 +133,7 @@ public class BAstCreator extends BuiltInOPs implements TranslationGlobals,
machineClauseList = new ArrayList<PMachineClause>();
AAbstractMachineParseUnit aAbstractMachineParseUnit = new AAbstractMachineParseUnit();
aAbstractMachineParseUnit.setVariant(new AMachineMachineVariant());
AMachineHeader machineHeader = new AMachineHeader();
List<TIdentifierLiteral> headerName = createTIdentifierLiteral(moduleNode
.getName().toString());
......
......@@ -5,6 +5,7 @@ import java.io.FileWriter;
import java.io.IOException;
import de.be4.classicalb.core.parser.node.Node;
import de.be4.classicalb.core.parser.node.Start;
import de.tla2b.analysis.InstanceTransformation;
import de.tla2b.analysis.SpecAnalyser;
import de.tla2b.analysis.SymbolRenamer;
......@@ -41,19 +42,8 @@ public class Translator {
parse();
}
private void parse(){
moduleName = evalFileName(moduleFileName);
TLAParser tlaParser = new TLAParser(null);
moduleNode = tlaParser.parseModule(moduleName);
modelConfig = null;
if (configFileName != null) {
modelConfig = new ModelConfig(configFileName, null);
modelConfig.parse();
}
}
//Used for Testing
public Translator(String moduleString, String configString, int i) {
moduleName = "Testing";
File dir = new File("temp/");
......@@ -91,7 +81,20 @@ public class Translator {
parse();
}
public Node translate() throws TLA2BException {
private void parse(){
moduleName = evalFileName(moduleFileName);
TLAParser tlaParser = new TLAParser(null);
moduleNode = tlaParser.parseModule(moduleName);
modelConfig = null;
if (configFileName != null) {
modelConfig = new ModelConfig(configFileName, null);
modelConfig.parse();
}
}
public Start translate() throws TLA2BException {
InstanceTransformation trans = new InstanceTransformation(moduleNode);
trans.start();
......
package de.tla2b.prettyprintb;
import static de.tla2b.util.TestUtil.compare;
import org.junit.Test;
public class SimpleModulesTest {
@Test
public void testSimpleModule() throws Exception {
final String module = "-------------- MODULE Testing ----------------\n"
+ "=================================";
final String expected = "MACHINE Testing\n"
+ "END";
compare(expected, module);
}
}
......@@ -7,11 +7,13 @@ package de.tla2b.util;
import static org.junit.Assert.assertEquals;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import de.be4.classicalb.core.parser.BParser;
import de.be4.classicalb.core.parser.exceptions.BException;
import de.be4.classicalb.core.parser.node.AAbstractMachineParseUnit;
import de.be4.classicalb.core.parser.node.Node;
import de.be4.classicalb.core.parser.node.Start;
import de.tla2b.exceptions.FrontEndException;
......@@ -39,7 +41,10 @@ public class TestUtil {
System.out.println(expected);
Translator trans = new Translator(tlaModule, null, 1);
Node resultNode = trans.translate();
Start resultNode = trans.translate();
//BParser.printASTasProlog(System.out, new BParser(), new File("./test.mch"), resultNode, false, true, null);
String result = getTreeAsString(resultNode);
System.out.println(result);
assertEquals(expected, result);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment