public FunctionListBuilder scalar(String name, MethodHandle function, boolean deterministic, FunctionBinder functionBinder, String description)
{
name = name.toLowerCase();
int id = functions.size() + 1;
Type returnType = type(function.type().returnType());
List<Type> argumentTypes = types(function);
functions.add(new FunctionInfo(id, QualifiedName.of(name), description, returnType, argumentTypes, function, deterministic, functionBinder));
return this;
}