public ExprTableEvalStrategyUngroupedBase( TableAndLockProviderUngrouped provider, ExprTableEvalStrategyFactory factory) { this._provider = provider; this._factory = factory; }
public ExprTableEvalStrategyUngroupedAggSimple( TableAndLockProviderUngrouped provider, ExprTableEvalStrategyFactory factory) : base(provider, factory) { }
public ExprTableEvalStrategyUngroupedTopLevel( TableAndLockProviderUngrouped provider, IDictionary <string, TableMetadataColumn> items) : base(provider) { this.items = items; }
private static ExprTableAccessEvalStrategy GetTableAccessSubprop( ExprTableAccessNodeSubprop subprop, TableMetadataColumn column, TableAndLockProviderUngrouped ungrouped, TableAndLockProviderGrouped grouped) { if (column is TableMetadataColumnPlain) { var plain = (TableMetadataColumnPlain)column; if (ungrouped != null) { return(new ExprTableEvalStrategyUngroupedProp( ungrouped, plain.IndexPlain, subprop.OptionalPropertyEnumEvaluator)); } if (subprop.GroupKeyEvaluators.Length > 1) { return(new ExprTableEvalStrategyGroupByPropMulti( grouped, plain.IndexPlain, subprop.OptionalPropertyEnumEvaluator, subprop.GroupKeyEvaluators)); } return(new ExprTableEvalStrategyGroupByPropSingle( grouped, plain.IndexPlain, subprop.OptionalPropertyEnumEvaluator, subprop.GroupKeyEvaluators[0])); } var aggcol = (TableMetadataColumnAggregation)column; if (ungrouped != null) { if (!aggcol.Factory.IsAccessAggregation) { return(new ExprTableEvalStrategyUngroupedMethod(ungrouped, aggcol.MethodOffset)); } var pair = aggcol.AccessAccessorSlotPair; return(new ExprTableEvalStrategyUngroupedAccess(ungrouped, pair.Slot, pair.Accessor)); } var columnAggregation = (TableMetadataColumnAggregation)column; if (!columnAggregation.Factory.IsAccessAggregation) { if (subprop.GroupKeyEvaluators.Length > 1) { return(new ExprTableEvalStrategyGroupByMethodMulti( grouped, columnAggregation.MethodOffset, subprop.GroupKeyEvaluators)); } return(new ExprTableEvalStrategyGroupByMethodSingle( grouped, columnAggregation.MethodOffset, subprop.GroupKeyEvaluators[0])); } if (subprop.GroupKeyEvaluators.Length > 1) { return(new ExprTableEvalStrategyGroupByAccessMulti( grouped, columnAggregation.AccessAccessorSlotPair, subprop.GroupKeyEvaluators)); } return(new ExprTableEvalStrategyGroupByAccessSingle( grouped, columnAggregation.AccessAccessorSlotPair, subprop.GroupKeyEvaluators[0])); }
public ExprTableEvalStrategyUngroupedAccess(TableAndLockProviderUngrouped provider, int slot, AggregationAccessor accessor) : base(provider) { _slot = slot; _accessor = accessor; }
public ExprTableEvalStrategyUngroupedProp(TableAndLockProviderUngrouped provider, int propertyIndex, ExprEvaluatorEnumerationGivenEvent optionalEnumEval) : base(provider) { _propertyIndex = propertyIndex; _optionalEnumEval = optionalEnumEval; }
public ExprTableEvalStrategyUngroupedMethod(TableAndLockProviderUngrouped provider, int methodOffset) : base(provider) { this._methodOffset = methodOffset; }
public ExprTableEvalStrategyUngroupedTopLevel( TableAndLockProviderUngrouped provider, ExprTableEvalStrategyFactory factory) : base(provider, factory) { }
protected ExprTableEvalStrategyUngroupedBase(TableAndLockProviderUngrouped provider) { _provider = provider; }