static void Main(string[] args) { var tree = new OperationNode2( new OperationNodeLeaf(5), new OperationNode2( new OperationNode2(new OperationNodeLeaf(1), new OperationNodeLeaf(2), Operation.Multiply), new OperationNode1(new OperationNodeLeaf(7, Operation.None), Operation.UnaryMinus), Operation.Add ), Operation.Multiply ); var visitor = new Visitor(); var res = visitor.Visit(tree); System.Diagnostics.Debug.WriteLine(res); }
public string Visit(OperationNode2 node) { return(Enclose(node.LeftSubNode, node.Op) + node.Op.ToFriendlyString() + Enclose(node.RightSubNode, node.Op)); }
public void Visit(OperationNode2 node) { Enclose(node.LeftSubNode, node.Op); Text = Text + node.Op.ToFriendlyString(); Enclose(node.RightSubNode, node.Op); }