예제 #1
0
 public AggregatorAvgNonBig(
     AggregationFactoryMethodAvg factory,
     int col,
     CodegenCtor rowCtor,
     CodegenMemberCol membersColumnized,
     CodegenClassScope classScope,
     Type optionalDistinctValueType,
     bool hasFilter,
     ExprNode optionalFilter,
     Type sumType)
     : base(
         factory,
         col,
         rowCtor,
         membersColumnized,
         classScope,
         optionalDistinctValueType,
         hasFilter,
         optionalFilter,
         sumType)
 {
     _factoryMethodAvg = factory;
 }
예제 #2
0
 public AggregatorAvgBig(
     AggregationFactoryMethodAvg factory,
     int col,
     CodegenCtor rowCtor,
     CodegenMemberCol membersColumnized,
     CodegenClassScope classScope,
     Type optionalDistinctValueType,
     bool hasFilter,
     ExprNode optionalFilter)
     : base(
         factory,
         col,
         rowCtor,
         membersColumnized,
         classScope,
         optionalDistinctValueType,
         hasFilter,
         optionalFilter)
 {
     _factory = factory;
     _sum = membersColumnized.AddMember(col, typeof(BigInteger), "sum");
     _cnt = membersColumnized.AddMember(col, typeof(long), "cnt");
     rowCtor.Block.AssignRef(_sum, EnumValue(typeof(BigInteger), "Zero"));
 }