use of de.be4.classicalb.core.preparser.node.Start in project probparsers by bendisposto.
the class Helpers method parseFile.
public static void parseFile(final String filename) throws IOException, BCompoundException {
final int dot = filename.lastIndexOf('.');
if (dot >= 0) {
final File machineFile = new File(filename);
final String probfilename = filename.substring(0, dot) + ".prob";
BParser parser = new BParser(filename);
Start tree = parser.parseFile(machineFile, false);
final ParsingBehaviour behaviour = new ParsingBehaviour();
behaviour.setVerbose(true);
PrintStream output = new PrintStream(probfilename);
BParser.printASTasProlog(output, parser, machineFile, tree, behaviour, parser.getContentProvider());
output.close();
} else
throw new IllegalArgumentException("Filename '" + filename + "' has no extension");
}
use of de.be4.classicalb.core.preparser.node.Start in project probparsers by bendisposto.
the class Helpers method getPrettyPrint.
public static String getPrettyPrint(final String testMachine) {
final BParser parser = new BParser("testcase");
Start startNode;
try {
startNode = parser.parse(testMachine, false);
} catch (BCompoundException e) {
throw new RuntimeException(e);
}
PrettyPrinter pp = new PrettyPrinter();
startNode.apply(pp);
return pp.getPrettyPrint();
}
use of de.be4.classicalb.core.preparser.node.Start in project probparsers by bendisposto.
the class LetPredicateTest method getTreeAsString.
private String getTreeAsString(final String testMachine) throws BCompoundException {
final Start startNode = parser.parse(testMachine, false);
final Ast2String ast2String = new Ast2String();
startNode.apply(ast2String);
return ast2String.toString();
}
use of de.be4.classicalb.core.preparser.node.Start in project probparsers by bendisposto.
the class FilePragmaTest method testFilePragma.
@Test
public void testFilePragma() throws IOException, BCompoundException {
String PATH = "src/test/resources/pragmas/filePragma/";
String file = PATH + "Main1.mch";
File f = new File(file);
BParser bparser = new BParser();
Start ast = bparser.parseFile(f, false);
assertNotNull(ast);
RecursiveMachineLoader rml = new RecursiveMachineLoader(PATH, bparser.getContentProvider(), new ParsingBehaviour());
rml.loadAllMachines(f, ast, bparser.getDefinitions());
}
use of de.be4.classicalb.core.preparser.node.Start in project probparsers by bendisposto.
the class PragmaMachineTest method testParsable.
@Test
public void testParsable() throws Exception {
final BParser parser = new BParser(machine.getName());
Start start = parser.parseFile(machine, false);
start.apply(new PositionTester());
assertNotNull(start);
}
Aggregations