adapt implementation to use grammar wrapper
This commit is contained in:
@ -1,5 +1,7 @@
|
||||
package parser;
|
||||
|
||||
import parser.grammar.Grammar;
|
||||
import parser.grammar.LL1GrammarAnalyzer;
|
||||
import util.ast.AST;
|
||||
import util.ast.Node;
|
||||
|
||||
@ -15,6 +17,11 @@ public class LL1Parser {
|
||||
this.parsetable = parsetable;
|
||||
}
|
||||
|
||||
public static LL1Parser fromGrammar(Grammar grammar) {
|
||||
LL1GrammarAnalyzer analyzer = new LL1GrammarAnalyzer(grammar);
|
||||
return new LL1Parser(analyzer.getTable());
|
||||
}
|
||||
|
||||
public boolean parse(List<String> token) {
|
||||
Node root = new Node(this.parsetable.getStartSymbol());
|
||||
AST tree = new AST(root);
|
||||
|
||||
Reference in New Issue
Block a user