FunctionIdent fi;
InputCollectExpression[] inputs;
if (dataType != null) {
fi = new FunctionIdent(name, ImmutableList.of(dataType));
inputs = new InputCollectExpression[]{new InputCollectExpression(0)};
} else {
fi = new FunctionIdent(name, ImmutableList.<DataType>of());
inputs = new InputCollectExpression[0];
}
AggregationFunction impl = (AggregationFunction) functions.get(fi);