private static TreeNodeBase BuildTreeNode(string symbol) { switch (symbol) { case "1": return new Constant(); case "x": return new State(); case "t": return new Time(); case "+": return new Addition(); case "*": return new Multiplication(); case "-": return new Substraction(); default: try { int a = Convert.ToInt32(symbol); var temp =new Constant(); temp.SetValue(a); return temp; } catch (Exception) { throw new Exception(); } } }
public override TreeNodeBase DeepCopy() { Constant node = new Constant {Value = Value}; return node; }