Class NativeScalarFunction
- java.lang.Object
-
- org.apache.cassandra.cql3.functions.AbstractFunction
-
- org.apache.cassandra.cql3.functions.NativeFunction
-
- org.apache.cassandra.cql3.functions.NativeScalarFunction
-
- All Implemented Interfaces:
AssignmentTestable
,Function
,ScalarFunction
- Direct Known Subclasses:
BytesConversionFcts.FromBlobFunction
,BytesConversionFcts.ToBlobFunction
,FromJsonFct
,MaskingFunction
,TimeFcts.FloorDateFunction
,TimeFcts.FloorTimestampFunction
,TimeFcts.FloorTimeUuidFunction
,TimeFcts.TemporalConversionFunction
,ToJsonFct
,TokenFct
public abstract class NativeScalarFunction extends NativeFunction implements ScalarFunction
Base class for theScalarFunction
native classes.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.cassandra.cql3.AssignmentTestable
AssignmentTestable.TestResult
-
-
Field Summary
-
Fields inherited from class org.apache.cassandra.cql3.functions.AbstractFunction
argTypes, name, returnType
-
Fields inherited from interface org.apache.cassandra.cql3.functions.Function
UNRESOLVED
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
NativeScalarFunction(java.lang.String name, AbstractType<?> returnType, AbstractType<?>... argsType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
isAggregate()
Checks whether the function is an aggregate function or not.boolean
isCalledOnNullInput()
protected boolean
isPartialApplicationMonotonic(java.util.List<java.nio.ByteBuffer> partialParameters)
Checks if a partial application of the function is monotonic.-
Methods inherited from class org.apache.cassandra.cql3.functions.NativeFunction
isNative, isPure, newArguments, withLegacyName
-
Methods inherited from class org.apache.cassandra.cql3.functions.AbstractFunction
addFunctionsTo, argTypes, argumentsList, columnName, elementKeyspace, elementName, equals, getCompatibleTypeIfKnown, hashCode, name, referencesUserType, returnType, testAssignment, toCqlString, toString, typesMatch
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.cassandra.cql3.AssignmentTestable
getCompatibleTypeIfKnown, testAssignment
-
Methods inherited from interface org.apache.cassandra.cql3.functions.Function
addFunctionsTo, argTypes, columnName, compare, isNative, isPure, name, newArguments, referencesUserType, returnType
-
Methods inherited from interface org.apache.cassandra.cql3.functions.ScalarFunction
execute, isMonotonic, partialApplication
-
-
-
-
Constructor Detail
-
NativeScalarFunction
protected NativeScalarFunction(java.lang.String name, AbstractType<?> returnType, AbstractType<?>... argsType)
-
-
Method Detail
-
isCalledOnNullInput
public boolean isCalledOnNullInput()
- Specified by:
isCalledOnNullInput
in interfaceScalarFunction
-
isAggregate
public final boolean isAggregate()
Description copied from interface:Function
Checks whether the function is an aggregate function or not.- Specified by:
isAggregate
in interfaceFunction
- Returns:
true
if the function is an aggregate function,false
otherwise.
-
isPartialApplicationMonotonic
protected boolean isPartialApplicationMonotonic(java.util.List<java.nio.ByteBuffer> partialParameters)
Checks if a partial application of the function is monotonic.A function is monotonic if it is either entirely nonincreasing or nondecreasing.
- Parameters:
partialParameters
- the input parameters used to create the partial application of the function- Returns:
true
if the partial application of the function is monotonicfalse
otherwise.
-
-