return new FunctionInfo(new FunctionIdent(functionName, dataTypes), DataTypes.LONG);
}
protected static void validateTypes(List<DataType> dataTypes) {
Preconditions.checkArgument(dataTypes.size() == 2);
DataType leftType = dataTypes.get(0);
DataType rightType = dataTypes.get(1);
Preconditions.checkArgument(ALLOWED_TYPES.contains(leftType),
"invalid type %s of left argument", leftType.toString());
Preconditions.checkArgument(ALLOWED_TYPES.contains(rightType),
"invalid type %s of right argument", leftType.toString());
}