public FunctionNode Parse(string queryText) { using (var stream = queryText.ToStream()) { scanner = new Scanner(stream); parser = new Parser(scanner); astBuilder.RegisterParseEvent(parser); parser.Parse(); } Console.WriteLine("Query parser: " + parser.errors.count + " errors detected"); if (parser.errors.count > 0) { throw new QueryException("Errors in func statement(s): " + parser.errors.count); } return(astBuilder.GlobalFunctionNode); }