Package io.trino.operator.aggregation
Class CompiledAccumulatorFactory
java.lang.Object
io.trino.operator.aggregation.CompiledAccumulatorFactory
- All Implemented Interfaces:
AccumulatorFactory
-
Constructor Summary
ConstructorsConstructorDescriptionCompiledAccumulatorFactory(Constructor<? extends Accumulator> accumulatorConstructor, Constructor<? extends GroupedAccumulator> groupedAccumulatorConstructor, List<Class<?>> lambdaInterfaces, Constructor<? extends AggregationMaskBuilder> maskBuilderConstructor) -
Method Summary
Modifier and TypeMethodDescriptioncreateAccumulator(List<Supplier<Object>> lambdaProviders) createGroupedAccumulator(List<Supplier<Object>> lambdaProviders) createGroupedIntermediateAccumulator(List<Supplier<Object>> lambdaProviders) createIntermediateAccumulator(List<Supplier<Object>> lambdaProviders)
-
Constructor Details
-
CompiledAccumulatorFactory
public CompiledAccumulatorFactory(Constructor<? extends Accumulator> accumulatorConstructor, Constructor<? extends GroupedAccumulator> groupedAccumulatorConstructor, List<Class<?>> lambdaInterfaces, Constructor<? extends AggregationMaskBuilder> maskBuilderConstructor)
-
-
Method Details
-
getLambdaInterfaces
- Specified by:
getLambdaInterfacesin interfaceAccumulatorFactory
-
createAccumulator
- Specified by:
createAccumulatorin interfaceAccumulatorFactory
-
createIntermediateAccumulator
- Specified by:
createIntermediateAccumulatorin interfaceAccumulatorFactory
-
createGroupedAccumulator
- Specified by:
createGroupedAccumulatorin interfaceAccumulatorFactory
-
createGroupedIntermediateAccumulator
public GroupedAccumulator createGroupedIntermediateAccumulator(List<Supplier<Object>> lambdaProviders) - Specified by:
createGroupedIntermediateAccumulatorin interfaceAccumulatorFactory
-
createAggregationMaskBuilder
- Specified by:
createAggregationMaskBuilderin interfaceAccumulatorFactory
-