public static List <CorrelatedExpression> Gather(Expression node) { var gatherer = new AccumulatorGatherer(); gatherer.Visit(node); return(gatherer._accumulators); }
protected internal override Expression VisitProjection(ProjectionExpression node) { _lookup = AccumulatorGatherer.Gather(node.Source).ToLookup(x => x.CorrelationId); return(base.VisitProjection(node)); }
protected internal override Expression VisitPipeline(PipelineExpression node) { _accumulatorLookup = AccumulatorGatherer.Gather(node.Source).ToLookup(x => x.CorrelationId); return(base.VisitPipeline(node)); }
public static List<CorrelatedAccumulatorExpression> Gather(Expression node) { var gatherer = new AccumulatorGatherer(); gatherer.Visit(node); return gatherer._accumulators; }