// <summary> // This routine is only used for building up rule patterns. // NEVER use this routine for building up nodes in a user command tree. // </summary> internal Node(Op op, params Node[] children) : this(-1, op, new List <Node>(children)) { }
// <summary> // Trap method for unrecognized Op types // </summary> // <param name="op"> The Op being visited </param> // <param name="n"> The Node that references the Op </param> public virtual void Visit(Op op, Node n) { throw new NotSupportedException(Strings.Iqt_General_UnsupportedOp(op.GetType().FullName)); }
// <summary> // Basic constructor. // NEVER call this routine directly - you should always use the Command.CreateNode // factory methods. // </summary> // <param name="nodeId"> id for the node </param> // <param name="op"> The operator </param> // <param name="children"> List of child nodes </param> internal Node(int nodeId, Op op, List <Node> children) { m_id = nodeId; Op = op; m_children = children; }
public virtual TResultType Visit(Op op, Node n) { return(this.Unimplemented(n)); }