public JavaScriptAst Create() { CreateTokenStream(); var parser = new ES3Parser(tokenStream); programReturn = parser.program(); return new JavaScriptAst(tokenStream, programReturn.Tree as CommonTree); }
public static IList<JsStatement> ParseProgram(string source) { var lex = new ES3Lexer(new ANTLRStringStream(source)); var tokens = new CommonTokenStream(lex); var parser = new ES3Parser(tokens); var r = parser.program(); var tree = new ES3Walker(new CommonTreeNodeStream(r.Tree)); return tree.program(); }
public static JsStatement ParseStatement(string source, bool allowCustomKeywords = false) { var lex = new ES3Lexer(new ANTLRStringStream(source.Trim())) { AllowCustomKeywords = allowCustomKeywords }; var tokens = new CommonTokenStream(lex); var parser = new ES3Parser(tokens); var r = parser.sourceElement(); var tree = new ES3Walker(new CommonTreeNodeStream(r.Tree)); return tree.statement(); }
public static JsExpression ParseExpression(string source, bool allowCustomKeywords = false) { var lex = new ES3Lexer(new ANTLRStringStream(source)) { AllowCustomKeywords = allowCustomKeywords }; var tokens = new CommonTokenStream(lex); var parser = new ES3Parser(tokens); var r = parser.expressionOnly(); var tree = new ES3Walker(new CommonTreeNodeStream(r.Tree)); return tree.expression(); }
public static JsStatement ParseStatement(string source) { var lex = new ES3Lexer(new ANTLRStringStream(source.Trim())); CommonTokenStream tokens = new CommonTokenStream(lex); var parser = new ES3Parser(tokens); var r = parser.sourceElement(); var tree = new ES3Walker(new CommonTreeNodeStream(r.Tree)); return tree.statement(); }
public static JsExpression ParseExpression(string source) { var lex = new ES3Lexer(new ANTLRStringStream(source)); CommonTokenStream tokens = new CommonTokenStream(lex); var parser = new ES3Parser(tokens); var r = parser.expression(); var tree = new ES3Walker(new CommonTreeNodeStream(r.Tree)); return tree.expression(); }