예제 #1
0
        protected AstNode GetAstNodesFromInput(string input)
        {
            var charStream = new AntlrInputStream(input);
            var lexer      = new QlLexer(charStream);
            var parser     = new QlParser(new CommonTokenStream(lexer));
            var visitor    = new AstCreator();

            return(visitor.Visit(parser.form()));
        }
예제 #2
0
        public FormStatement BuildAst()
        {
            var dataStream = new AntlrInputStream(this.InputData);
            var lexer      = new QlLexer(dataStream);
            var parser     = new QlParser(new CommonTokenStream(lexer));
            var astCreator = new AstCreator();
            var astTree    = astCreator.Visit(parser.form());

            Console.WriteLine("Ql AST building done!");

            return(astTree.As <FormStatement>());
        }