public RuleAST parseArtificialRule(final Grammar g, String ruleText) { ANTLRLexer lexer = new ANTLRLexer(new ANTLRStringStream(ruleText)); GrammarASTAdaptor adaptor = new GrammarASTAdaptor(lexer.getCharStream()); CommonTokenStream tokens = new CommonTokenStream(lexer); lexer.tokens = tokens; ToolANTLRParser p = new ToolANTLRParser(tokens, tool); p.setTreeAdaptor(adaptor); Token ruleStart = null; try { ParserRuleReturnScope r = p.rule(); RuleAST tree = (RuleAST)r.getTree(); ruleStart = (Token)r.getStart(); GrammarTransformPipeline.setGrammarPtr(g, tree); GrammarTransformPipeline.augmentTokensWithOriginalPosition(g, tree); return tree; } catch (Exception e) { tool.errMgr.toolError(ErrorType.INTERNAL_ERROR, e, ruleStart, "error parsing rule created during left-recursion detection: "+ruleText); } return null; }
public RuleAST parseArtificialRule(final Grammar g, String ruleText) { ANTLRLexer lexer = new ANTLRLexer(new ANTLRStringStream(ruleText)); GrammarASTAdaptor adaptor = new GrammarASTAdaptor(lexer.getCharStream()); CommonTokenStream tokens = new CommonTokenStream(lexer); lexer.tokens = tokens; ToolANTLRParser p = new ToolANTLRParser(tokens, tool); p.setTreeAdaptor(adaptor); Token ruleStart = null; try { ParserRuleReturnScope r = p.rule(); RuleAST tree = (RuleAST)r.getTree(); ruleStart = (Token)r.getStart(); GrammarTransformPipeline.setGrammarPtr(g, tree); GrammarTransformPipeline.augmentTokensWithOriginalPosition(g, tree); return tree; } catch (Exception e) { tool.errMgr.toolError(ErrorType.INTERNAL_ERROR, e, ruleStart, "error parsing rule created during left-recursion detection: "+ruleText); } return null; }
public RuleAST parseArtificialRule(final Grammar g, String ruleText) { ANTLRLexer lexer = new ANTLRLexer(new ANTLRStringStream(ruleText)); GrammarASTAdaptor adaptor = new GrammarASTAdaptor(lexer.getCharStream()); CommonTokenStream tokens = new CommonTokenStream(lexer); lexer.tokens = tokens; ToolANTLRParser p = new ToolANTLRParser(tokens, tool); p.setTreeAdaptor(adaptor); Token ruleStart = null; try { ParserRuleReturnScope r = p.rule(); RuleAST tree = (RuleAST)r.getTree(); ruleStart = (Token)r.getStart(); GrammarTransformPipeline.setGrammarPtr(g, tree); GrammarTransformPipeline.augmentTokensWithOriginalPosition(g, tree); return tree; } catch (Exception e) { tool.errMgr.toolError(ErrorType.INTERNAL_ERROR, e, ruleStart, "error parsing rule created during left-recursion detection: "+ruleText); } return null; }
public RuleAST parseArtificialRule(final Grammar g, String ruleText) { ANTLRLexer lexer = new ANTLRLexer(new ANTLRStringStream(ruleText)); GrammarASTAdaptor adaptor = new GrammarASTAdaptor(lexer.getCharStream()); CommonTokenStream tokens = new CommonTokenStream(lexer); lexer.tokens = tokens; ToolANTLRParser p = new ToolANTLRParser(tokens, tool); p.setTreeAdaptor(adaptor); Token ruleStart = null; try { ParserRuleReturnScope r = p.rule(); RuleAST tree = (RuleAST)r.getTree(); ruleStart = (Token)r.getStart(); GrammarTransformPipeline.setGrammarPtr(g, tree); GrammarTransformPipeline.augmentTokensWithOriginalPosition(g, tree); return tree; } catch (Exception e) { tool.errMgr.toolError(ErrorType.INTERNAL_ERROR, e, ruleStart, "error parsing rule created during left-recursion detection: "+ruleText); } return null; }
public RuleAST parseArtificialRule(final Grammar g, String ruleText) { ANTLRLexer lexer = new ANTLRLexer(new ANTLRStringStream(ruleText)); GrammarASTAdaptor adaptor = new GrammarASTAdaptor(lexer.getCharStream()); CommonTokenStream tokens = new CommonTokenStream(lexer); lexer.tokens = tokens; ToolANTLRParser p = new ToolANTLRParser(tokens, tool); p.setTreeAdaptor(adaptor); Token ruleStart = null; try { ParserRuleReturnScope r = p.rule(); RuleAST tree = (RuleAST)r.getTree(); ruleStart = (Token)r.getStart(); GrammarTransformPipeline.setGrammarPtr(g, tree); GrammarTransformPipeline.augmentTokensWithOriginalPosition(g, tree); return tree; } catch (Exception e) { tool.errMgr.toolError(ErrorType.INTERNAL_ERROR, e, ruleStart, "error parsing rule created during left-recursion detection: "+ruleText); } return null; }