src/Shared/EntityFramework/Core/Query/InternalTrees/OpCopier.cs
// <summary>
// Copies a group by into 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>
Copies a group by into node
Copies a group by into node
public override Node Visit(GroupByIntoOp op, Node n)
        {
            var children = ProcessChildren(n);
            var newGroupOp = m_destCmd.CreateGroupByIntoOp(Copy(op.Keys), Copy(op.Inputs), Copy(op.Outputs));
            return m_destCmd.CreateNode(newGroupOp, children);
        }
public override Node Visit ( GroupByIntoOp op , Node n ) { var children = ProcessChildren ( n ) ; var newGroupOp = m_destCmd . CreateGroupByIntoOp ( Copy ( op . Keys ) , Copy ( op . Inputs ) , Copy ( op . Outputs ) ) ; return m_destCmd . CreateNode ( newGroupOp , children ) ; }
Copies a group by into node
Copies a group by into node
// Visit the Node's children and map their Vars // Create a new GroupByOp that uses copies of the Key and Output VarSets of the original GroupByOp // Return a new Node that references the copied GroupByOp and has the copied child Nodes as its children
A copy of the original Node that references a copy of the original Op
A copy of the original Node that references a copy of the original Op
op
GroupByIntoOp
The Op to Copy
The Op to Copy
n
Node
The Node that references the Op
The Node that references the Op