internal GroupKeyAggregateInfo( GroupAggregateKind aggregateKind, ErrorContext errCtx, GroupAggregateInfo containingAggregate, ScopeRegion definingScopeRegion) : base( aggregateKind, null /* there is no AST.GroupAggregateExpression corresponding to the group key */, errCtx, containingAggregate, definingScopeRegion) { }
internal GroupKeyAggregateInfo( GroupAggregateKind aggregateKind, ErrorContext errCtx, GroupAggregateInfo containingAggregate, ScopeRegion definingScopeRegion) : base(aggregateKind, (GroupAggregateExpr)null, errCtx, containingAggregate, definingScopeRegion) { }
internal IDisposable EnterGroupKeyDefinition( GroupAggregateKind aggregateKind, ErrorContext errCtx, out GroupKeyAggregateInfo aggregateInfo) { aggregateInfo = new GroupKeyAggregateInfo(aggregateKind, errCtx, this._currentGroupAggregateInfo, this.CurrentScopeRegion); return(this.EnterGroupAggregate((GroupAggregateInfo)aggregateInfo)); }
protected GroupAggregateInfo( GroupAggregateKind aggregateKind, GroupAggregateExpr astNode, ErrorContext errCtx, GroupAggregateInfo containingAggregate, ScopeRegion definingScopeRegion) { this.AggregateKind = aggregateKind; this.AstNode = astNode; this.ErrCtx = errCtx; this.DefiningScopeRegion = definingScopeRegion; this.SetContainingAggregate(containingAggregate); }
protected GroupAggregateInfo( GroupAggregateKind aggregateKind, GroupAggregateExpr astNode, ErrorContext errCtx, GroupAggregateInfo containingAggregate, ScopeRegion definingScopeRegion) { Debug.Assert(aggregateKind != GroupAggregateKind.None, "aggregateKind != GroupAggregateKind.None"); Debug.Assert(errCtx != null, "errCtx != null"); Debug.Assert(definingScopeRegion != null, "definingScopeRegion != null"); AggregateKind = aggregateKind; AstNode = astNode; ErrCtx = errCtx; DefiningScopeRegion = definingScopeRegion; SetContainingAggregate(containingAggregate); }
protected GroupAggregateInfo( GroupAggregateKind aggregateKind, GroupAggregateExpr astNode, ErrorContext errCtx, GroupAggregateInfo containingAggregate, ScopeRegion definingScopeRegion) { Debug.Assert(aggregateKind != GroupAggregateKind.None, "aggregateKind != GroupAggregateKind.None"); DebugCheck.NotNull(errCtx); DebugCheck.NotNull(definingScopeRegion); AggregateKind = aggregateKind; AstNode = astNode; ErrCtx = errCtx; DefiningScopeRegion = definingScopeRegion; SetContainingAggregate(containingAggregate); }