Package io.trino.operator.scalar
Class ChoicesScalarFunctionImplementation
java.lang.Object
io.trino.operator.scalar.ChoicesScalarFunctionImplementation
- All Implemented Interfaces:
ScalarFunctionImplementation
public final class ChoicesScalarFunctionImplementation
extends Object
implements ScalarFunctionImplementation
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class -
Constructor Summary
ConstructorsConstructorDescriptionChoicesScalarFunctionImplementation(BoundSignature boundSignature, InvocationConvention.InvocationReturnConvention returnConvention, List<InvocationConvention.InvocationArgumentConvention> argumentConventions, MethodHandle methodHandle) ChoicesScalarFunctionImplementation(BoundSignature boundSignature, InvocationConvention.InvocationReturnConvention returnConvention, List<InvocationConvention.InvocationArgumentConvention> argumentConventions, MethodHandle methodHandle, Optional<MethodHandle> instanceFactory) ChoicesScalarFunctionImplementation(BoundSignature boundSignature, InvocationConvention.InvocationReturnConvention returnConvention, List<InvocationConvention.InvocationArgumentConvention> argumentConventions, List<Class<?>> lambdaInterfaces, MethodHandle methodHandle, Optional<MethodHandle> instanceFactory) ChoicesScalarFunctionImplementation(BoundSignature boundSignature, List<ChoicesScalarFunctionImplementation.ScalarImplementationChoice> choices) Creates a ScalarFunctionImplementation consisting of one or more choices. -
Method Summary
Modifier and TypeMethodDescriptiongetScalarFunctionInvoker(InvocationConvention invocationConvention)
-
Constructor Details
-
ChoicesScalarFunctionImplementation
public ChoicesScalarFunctionImplementation(BoundSignature boundSignature, InvocationConvention.InvocationReturnConvention returnConvention, List<InvocationConvention.InvocationArgumentConvention> argumentConventions, MethodHandle methodHandle) -
ChoicesScalarFunctionImplementation
public ChoicesScalarFunctionImplementation(BoundSignature boundSignature, InvocationConvention.InvocationReturnConvention returnConvention, List<InvocationConvention.InvocationArgumentConvention> argumentConventions, MethodHandle methodHandle, Optional<MethodHandle> instanceFactory) -
ChoicesScalarFunctionImplementation
public ChoicesScalarFunctionImplementation(BoundSignature boundSignature, InvocationConvention.InvocationReturnConvention returnConvention, List<InvocationConvention.InvocationArgumentConvention> argumentConventions, List<Class<?>> lambdaInterfaces, MethodHandle methodHandle, Optional<MethodHandle> instanceFactory) -
ChoicesScalarFunctionImplementation
public ChoicesScalarFunctionImplementation(BoundSignature boundSignature, List<ChoicesScalarFunctionImplementation.ScalarImplementationChoice> choices) Creates a ScalarFunctionImplementation consisting of one or more choices.All choices must have the same SQL signature, and are equivalent in what they do. The first choice is the default choice, which is the one used for legacy access methods. The default choice must be usable under any context. (e.g. it must not use BLOCK_POSITION convention.)
- Parameters:
boundSignature-choices- the list of choices, ordered from generic to specific
-
-
Method Details
-
getChoices
-
getScalarFunctionInvoker
- Specified by:
getScalarFunctionInvokerin interfaceScalarFunctionImplementation
-