public static EPLTreeWalkerListener ParseAndWalkPattern(String expression) { Log.Debug(".parseAndWalk Trying text=" + expression); Pair <ITree, CommonTokenStream> ast = SupportParserHelper.ParsePattern(expression); Log.Debug(".parseAndWalk success, tree walking..."); SupportParserHelper.DisplayAST(ast.First); EPLTreeWalkerListener listener = SupportEPLTreeWalkerFactory.MakeWalker(ast.Second); ParseTreeWalker walker = new ParseTreeWalker(); walker.Walk(listener, (IParseTree)ast.First); return(listener); }
public static EPLTreeWalkerListener ParseAndWalkEPL(String expression, EngineImportService engineImportService, VariableService variableService) { Log.Debug(".parseAndWalk Trying text=" + expression); Pair <ITree, CommonTokenStream> ast = SupportParserHelper.ParseEPL(expression); Log.Debug(".parseAndWalk success, tree walking..."); SupportParserHelper.DisplayAST(ast.First); EventAdapterService eventAdapterService = SupportEventAdapterService.Service; eventAdapterService.AddBeanType("SupportBean_N", typeof(SupportBean_N), true, true, true); EPLTreeWalkerListener listener = SupportEPLTreeWalkerFactory.MakeWalker(ast.Second, engineImportService, variableService); ParseTreeWalker walker = new ParseTreeWalker(); // create standard walker walker.Walk(listener, (IParseTree)ast.First); // initiate walk of tree with listener return(listener); }