// <summary> // Copies a group-by node // </summary> // <param name="op"> The Op to Copy </param> // <param name="n"> The Node that references the Op </param> // <returns> A copy of the original Node that references a copy of the original Op </returns> public override Node Visit(GroupByOp op, Node n) { // Visit the Node's children and map their Vars var children = ProcessChildren(n); // Create a new GroupByOp that uses copies of the Key and Output VarSets of the original GroupByOp var newGroupOp = m_destCmd.CreateGroupByOp(Copy(op.Keys), Copy(op.Outputs)); // Return a new Node that references the copied GroupByOp and has the copied child Nodes as its children return(m_destCmd.CreateNode(newGroupOp, children)); }
public override Node Visit(GroupByOp op, Node n) { List <Node> args = this.ProcessChildren(n); return(this.m_destCmd.CreateNode((Op)this.m_destCmd.CreateGroupByOp(this.Copy(op.Keys), this.Copy(op.Outputs)), args)); }
public virtual void Visit(GroupByOp op, Node n) { this.VisitGroupByOp((GroupByBaseOp)op, n); }
/// <summary> /// Visitor pattern method for GroupByOp /// </summary> /// <param name="op"> The GroupByOp being visited </param> /// <param name="n"> The Node that references the Op </param> public virtual void Visit(GroupByOp op, Node n) { VisitGroupByOp(op, n); }
// <summary> // GroupByOp // </summary> public virtual TResultType Visit(GroupByOp op, Node n) { return(VisitGroupByOp(op, n)); }
public virtual TResultType Visit(GroupByOp op, Node n) { return(this.VisitGroupByOp((GroupByBaseOp)op, n)); }