public virtual object VisitQueryExpressionAggregateClause(QueryExpressionAggregateClause queryExpressionAggregateClause, object data) { Debug.Assert((queryExpressionAggregateClause != null)); Debug.Assert((queryExpressionAggregateClause.Source != null)); Debug.Assert((queryExpressionAggregateClause.MiddleClauses != null)); Debug.Assert((queryExpressionAggregateClause.IntoVariables != null)); queryExpressionAggregateClause.Source.AcceptVisitor(this, data); foreach (QueryExpressionClause o in queryExpressionAggregateClause.MiddleClauses) { Debug.Assert(o != null); o.AcceptVisitor(this, data); } foreach (ExpressionRangeVariable o in queryExpressionAggregateClause.IntoVariables) { Debug.Assert(o != null); o.AcceptVisitor(this, data); } return null; }
public virtual object VisitQueryExpressionAggregateClause(QueryExpressionAggregateClause queryExpressionAggregateClause, object data) { throw new global::System.NotImplementedException("QueryExpressionAggregateClause"); }
public virtual object VisitQueryExpressionAggregateClause(QueryExpressionAggregateClause queryExpressionAggregateClause, object data) { Debug.Assert((queryExpressionAggregateClause != null)); Debug.Assert((queryExpressionAggregateClause.Source != null)); Debug.Assert((queryExpressionAggregateClause.MiddleClauses != null)); Debug.Assert((queryExpressionAggregateClause.IntoVariables != null)); nodeStack.Push(queryExpressionAggregateClause.Source); queryExpressionAggregateClause.Source.AcceptVisitor(this, data); queryExpressionAggregateClause.Source = ((CollectionRangeVariable)(nodeStack.Pop())); for (int i = 0; i < queryExpressionAggregateClause.MiddleClauses.Count; i++) { QueryExpressionClause o = queryExpressionAggregateClause.MiddleClauses[i]; Debug.Assert(o != null); nodeStack.Push(o); o.AcceptVisitor(this, data); o = (QueryExpressionClause)nodeStack.Pop(); if (o == null) queryExpressionAggregateClause.MiddleClauses.RemoveAt(i--); else queryExpressionAggregateClause.MiddleClauses[i] = o; } for (int i = 0; i < queryExpressionAggregateClause.IntoVariables.Count; i++) { ExpressionRangeVariable o = queryExpressionAggregateClause.IntoVariables[i]; Debug.Assert(o != null); nodeStack.Push(o); o.AcceptVisitor(this, data); o = (ExpressionRangeVariable)nodeStack.Pop(); if (o == null) queryExpressionAggregateClause.IntoVariables.RemoveAt(i--); else queryExpressionAggregateClause.IntoVariables[i] = o; } return null; }
void AggregateQueryOperator(out QueryExpressionAggregateClause aggregateClause) { aggregateClause = new QueryExpressionAggregateClause(); aggregateClause.IntoVariables = new List<ExpressionRangeVariable>(); aggregateClause.StartLocation = la.Location; CollectionRangeVariable source; Expect(58); CollectionRangeVariableDeclaration(out source); aggregateClause.Source = source; while (StartOf(31)) { QueryOperator(aggregateClause.MiddleClauses); } Expect(143); ExpressionRangeVariableDeclarationList(aggregateClause.IntoVariables); aggregateClause.EndLocation = t.EndLocation; }
public sealed override object VisitQueryExpressionAggregateClause(QueryExpressionAggregateClause queryExpressionAggregateClause, object data) { this.BeginVisit(queryExpressionAggregateClause); object result = this.TrackedVisitQueryExpressionAggregateClause(queryExpressionAggregateClause, data); this.EndVisit(queryExpressionAggregateClause); return result; }
public virtual object TrackedVisitQueryExpressionAggregateClause(QueryExpressionAggregateClause queryExpressionAggregateClause, object data) { return base.VisitQueryExpressionAggregateClause(queryExpressionAggregateClause, data); }