private BinaryTreeNode GetBinaryTree(string s) { var parser = AntlrUtils.GetParser(s); var cst = parser.compileUnit(); return(new BuildBinaryTreeVisitor().VisitCompileUnit(cst)); }
static void Main(string[] args) { while (true) { Console.Write("> "); var exprText = Console.ReadLine(); if (string.IsNullOrWhiteSpace(exprText)) { break; } var parser = AntlrUtils.GetParser(exprText); //try //{ var cst = parser.compileUnit(); var ast = new BuildBinaryTreeVisitor().VisitCompileUnit(cst); var expr = new BuildExpressionVisitor().Visit((ExpressionNode)ast); //expr.Simplify(); Console.WriteLine(expr.ToString()); //} //catch (Exception ex) //{ // Console.WriteLine(ex); //} Console.WriteLine(); } }
private Expression GetExpression(string exprText) { var parser = AntlrUtils.GetParser(exprText); var cst = parser.compileUnit(); var ast = new BuildBinaryTreeVisitor().VisitCompileUnit(cst); return(new BuildExpressionVisitor().Visit((ExpressionNode)ast)); }