diff options
| author | bculkin2442 <bjculkin@mix.wvu.edu> | 2016-04-08 13:29:48 -0400 |
|---|---|---|
| committer | bculkin2442 <bjculkin@mix.wvu.edu> | 2016-04-08 13:29:48 -0400 |
| commit | 90d1cc6c9f47f1b6f74fb57e07865795a46c23b8 (patch) | |
| tree | b74cd5b9989c9f5a1bbde1e1b8c751faf9cb7086 /dice-lang/src/examples/java/bjc/dicelang | |
| parent | b1df3ff8c890bf6d4cc16fb4f28ddb7833512d71 (diff) | |
Change to data interfaces, as well as prepare to rewrite parser
Diffstat (limited to 'dice-lang/src/examples/java/bjc/dicelang')
5 files changed, 33 insertions, 31 deletions
diff --git a/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguagePragmaHandlers.java b/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguagePragmaHandlers.java index 420391e..fa16515 100644 --- a/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguagePragmaHandlers.java +++ b/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguagePragmaHandlers.java @@ -3,10 +3,10 @@ package bjc.dicelang.examples; import java.util.Map; import java.util.function.BiConsumer; -import bjc.dicelang.ast.DiceASTExpression; -import bjc.dicelang.ast.DiceASTInliner; -import bjc.dicelang.ast.DiceASTParser; import bjc.dicelang.ast.nodes.IDiceASTNode; +import bjc.dicelang.old.ast.DiceASTExpression; +import bjc.dicelang.old.ast.DiceASTInliner; +import bjc.dicelang.old.ast.DiceASTParser; import bjc.utils.funcdata.FunctionalMap; import bjc.utils.parserutils.AST; diff --git a/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguageState.java b/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguageState.java index 92e75e3..7db6ab3 100644 --- a/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguageState.java +++ b/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguageState.java @@ -2,8 +2,8 @@ package bjc.dicelang.examples; import java.util.Map; -import bjc.dicelang.ast.DiceASTExpression; -import bjc.dicelang.ast.DiceASTParser; +import bjc.dicelang.old.ast.DiceASTExpression; +import bjc.dicelang.old.ast.DiceASTParser; import bjc.utils.data.Pair; /** diff --git a/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguageTest.java b/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguageTest.java index 54f54ac..3c84657 100644 --- a/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguageTest.java +++ b/dice-lang/src/examples/java/bjc/dicelang/examples/DiceASTLanguageTest.java @@ -6,19 +6,20 @@ import java.util.Scanner; import java.util.function.BiConsumer; import bjc.dicelang.IDiceExpression; -import bjc.dicelang.ast.DiceASTDefinedChecker; -import bjc.dicelang.ast.DiceASTExpression; -import bjc.dicelang.ast.DiceASTInliner; -import bjc.dicelang.ast.DiceASTParser; -import bjc.dicelang.ast.DiceASTReferenceChecker; import bjc.dicelang.ast.nodes.IDiceASTNode; import bjc.dicelang.ast.optimization.DiceASTOptimizer; +import bjc.dicelang.old.ast.DiceASTDefinedChecker; +import bjc.dicelang.old.ast.DiceASTExpression; +import bjc.dicelang.old.ast.DiceASTInliner; +import bjc.dicelang.old.ast.DiceASTParser; +import bjc.dicelang.old.ast.DiceASTReferenceChecker; import static bjc.dicelang.examples.DiceASTLanguagePragmaHandlers.*; import bjc.utils.data.GenHolder; import bjc.utils.data.IHolder; import bjc.utils.funcdata.FunctionalMap; +import bjc.utils.funcdata.IFunctionalMap; import bjc.utils.funcdata.bst.ITreePart.TreeLinearizationMethod; import bjc.utils.parserutils.AST; @@ -149,20 +150,21 @@ public class DiceASTLanguageTest { try { numberOfRolls = Integer.parseInt(args[2]); - } catch (NumberFormatException nfex) { + } catch (@SuppressWarnings("unused") NumberFormatException nfex) { + // Don't care about details System.err.println( "ERROR: The second argument must be a valid number, and " + args[2] + " is not one."); return; } - IDiceExpression expressionToRoll = - languageState.merge((astParser, enviroment) -> { + IDiceExpression expressionToRoll = languageState + .merge((astParser, enviroment) -> { if (!enviroment.containsKey(expressionName)) { return null; - } else { - return enviroment.get(expressionName); } + + return enviroment.get(expressionName); }); if (expressionToRoll == null) { @@ -198,8 +200,8 @@ public class DiceASTLanguageTest { // The parser to turn strings into AST's DiceASTParser astParser = new DiceASTParser(); - DiceASTLanguageState languageState = - new DiceASTLanguageState(astParser, enviroment); + DiceASTLanguageState languageState = new DiceASTLanguageState( + astParser, enviroment); while (!currentLine.equalsIgnoreCase("quit")) { String prospectiveCommandName = currentLine.split(" ")[0]; @@ -214,20 +216,20 @@ public class DiceASTLanguageTest { AST<IDiceASTNode> builtAST; try { - builtAST = astParser.buildAST(currentLine); + builtAST = DiceASTParser.buildAST(currentLine); } catch (IllegalStateException isex) { System.out.println( "ERROR: " + isex.getLocalizedMessage()); - currentLine = - getNextCommand(inputSource, commandNumber); + currentLine = getNextCommand(inputSource, + commandNumber); continue; } // Build a rollable expression from the AST - DiceASTExpression expression = - new DiceASTExpression(builtAST, enviroment); + DiceASTExpression expression = new DiceASTExpression( + builtAST, enviroment); int sampleRoll; @@ -237,8 +239,8 @@ public class DiceASTLanguageTest { System.out.println( "ERROR: " + usex.getLocalizedMessage()); - currentLine = - getNextCommand(inputSource, commandNumber); + currentLine = getNextCommand(inputSource, + commandNumber); continue; } @@ -249,8 +251,8 @@ public class DiceASTLanguageTest { + " Problematic expression: \n\t" + expression); - currentLine = - getNextCommand(inputSource, commandNumber); + currentLine = getNextCommand(inputSource, + commandNumber); continue; } @@ -320,9 +322,8 @@ public class DiceASTLanguageTest { private static DiceASTExpression freezeOutLast( Map<String, DiceASTExpression> enviroment, AST<IDiceASTNode> builtAST) { - FunctionalMap<String, AST<IDiceASTNode>> transformedEnviroment = - new FunctionalMap<>(enviroment) - .mapValues((expr) -> expr.getAst()); + IFunctionalMap<String, AST<IDiceASTNode>> transformedEnviroment = new FunctionalMap<>( + enviroment).mapValues((expr) -> expr.getAst()); AST<IDiceASTNode> expressionSansLast = DiceASTInliner .selectiveInline(builtAST, transformedEnviroment, "last"); diff --git a/dice-lang/src/examples/java/bjc/dicelang/examples/DiceExpressionParserTest.java b/dice-lang/src/examples/java/bjc/dicelang/examples/DiceExpressionParserTest.java index d2f947a..ceb90ef 100644 --- a/dice-lang/src/examples/java/bjc/dicelang/examples/DiceExpressionParserTest.java +++ b/dice-lang/src/examples/java/bjc/dicelang/examples/DiceExpressionParserTest.java @@ -44,7 +44,8 @@ public class DiceExpressionParserTest { */ DiceExpressionParser dep = new DiceExpressionParser(); - IDiceExpression dexp = dep.parse(exp, new HashMap<>()); + IDiceExpression dexp = DiceExpressionParser.parse(exp, + new HashMap<>()); /* * Roll the dice a specified amount of times diff --git a/dice-lang/src/examples/java/bjc/dicelang/examples/DiceLanguageTest.java b/dice-lang/src/examples/java/bjc/dicelang/examples/DiceLanguageTest.java index c832d6b..8dfaceb 100644 --- a/dice-lang/src/examples/java/bjc/dicelang/examples/DiceLanguageTest.java +++ b/dice-lang/src/examples/java/bjc/dicelang/examples/DiceLanguageTest.java @@ -76,7 +76,7 @@ public class DiceLanguageTest { if (acts.containsKey(header)) { acts.get(header).accept(ln, state); } else { - IDiceExpression exp = dep.parse(ln, env); + IDiceExpression exp = DiceExpressionParser.parse(ln, env); System.out.println("\tParsed: " + exp.toString()); System.out.println("\tSample Roll: " + exp.roll()); |
