public class SelectFunction extends AbstractSelectFunction implements Optimizer.FunctionOptimizer
Modifier and Type | Field and Description |
---|---|
static int |
MODE_FROM_SELECTION |
static int |
MODE_FROM_SELECTION_IF_NOT_EMPTY |
static int |
MODE_FROM_STORE |
static java.lang.String |
PROP_FEATURETYPESUPPLIER |
LOGGER, TYPE_BIGDECIMAL, TYPE_BOOLEAN, TYPE_DATE, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INT, TYPE_LONG, TYPE_NULL, TYPE_STRING
GROUP_AGGREGATE, GROUP_BOOLEAN, GROUP_CONVERSION, GROUP_DATETIME, GROUP_NUMERIC, GROUP_OGC, GROUP_OTHER, GROUP_PROGRAMMING, GROUP_STRING
Constructor and Description |
---|
SelectFunction() |
Modifier and Type | Method and Description |
---|---|
boolean |
allowConstantFolding()
Returns true if the function always returns the same value for
the same parameters.
|
java.lang.Object |
call(Interpreter interpreter,
Codes args) |
java.lang.Object |
call(Interpreter interpreter,
java.lang.Object[] args) |
protected Code.Callable |
getColumnsCode(Codes args) |
boolean |
isHidden() |
Code |
optimize(Optimizer optimizer,
Code.Callable caller) |
java.lang.String |
toString(Codes args,
Formatter<Code> formatter) |
ExpressionBuilder.Value |
toValue(ExpressionBuilder builder,
Codes args) |
boolean |
useArgumentsInsteadObjects() |
getFeatureStore, getIdentifier, getStore, getTupleOrNull, getWhereCode, isHostExpression, removeOuterTablesReferences, replaceLocalVariables
addAlias, aliases, argc, checkDoubleValue, checkFloatValue, description, descriptionArgs, getBigDecimal, getBoolean, getBoolean, getBoolean, getBoolean, getBoolean, getComparable, getComparable, getDate, getDate, getDouble, getDouble, getFile, getFile, getFloat, getFloat, getFullDescription, getInt, getInt, getInt, getJsonArray, getJsonArray, getJsonObject, getJsonObject, getJsonStructure, getJsonStructure, getList, getLocalDateTime, getLocalDateTime, getLong, getLong, getObject, getObject, getStr, getStr, getType, getURL, group, isNull, isOperator, isSQLCompatible, name, returnType, template, toBoolean, toString
public static final int MODE_FROM_STORE
public static final int MODE_FROM_SELECTION
public static final int MODE_FROM_SELECTION_IF_NOT_EMPTY
public static final java.lang.String PROP_FEATURETYPESUPPLIER
public boolean isHidden()
isHidden
in interface Function
isHidden
in class AbstractFunction
public boolean allowConstantFolding()
Function
allowConstantFolding
in interface Function
allowConstantFolding
in class AbstractFunction
public boolean useArgumentsInsteadObjects()
useArgumentsInsteadObjects
in interface Function
useArgumentsInsteadObjects
in class AbstractFunction
public java.lang.Object call(Interpreter interpreter, java.lang.Object[] args) throws java.lang.Exception
protected Code.Callable getColumnsCode(Codes args)
public java.lang.Object call(Interpreter interpreter, Codes args) throws java.lang.Exception
call
in interface Function
call
in class AbstractFunction
java.lang.Exception
public Code optimize(Optimizer optimizer, Code.Callable caller)
optimize
in interface Optimizer.FunctionOptimizer
public ExpressionBuilder.Value toValue(ExpressionBuilder builder, Codes args)
toValue
in interface Function
toValue
in class AbstractFunction