Package io.deephaven.engine.util
Class PyCallableWrapperJpyImpl
java.lang.Object
io.deephaven.engine.util.PyCallableWrapperJpyImpl
- All Implemented Interfaces:
PyCallableWrapper
When given a pyObject that is a callable, we stick it inside the callable wrapper, which implements a call() varargs
method, so that we can call it using __call__ without all of the JPy nastiness.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.deephaven.engine.util.PyCallableWrapper
PyCallableWrapper.ChunkArgument, PyCallableWrapper.ColumnChunkArgument, PyCallableWrapper.ConstantChunkArgument, PyCallableWrapper.Parameter, PyCallableWrapper.Signature
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addChunkArgument
(PyCallableWrapper.ChunkArgument chunkArgument) buildArgumentsChunked
(List<String> columnNames) org.jpy.PyObject
getAttribute
(String name) <T> T
getAttribute
(String name, Class<? extends T> valueType) static void
init()
Ensure that the class initializer runs.void
static boolean
isLosslessWideningPrimitiveConversion
(@NotNull Class<?> original, @NotNull Class<?> target) boolean
boolean
boolean
void
void
setVectorizable
(boolean vectorizable) org.jpy.PyObject
void
verifyArguments
(Class<?>[] argTypes)
-
Constructor Details
-
PyCallableWrapperJpyImpl
public PyCallableWrapperJpyImpl(org.jpy.PyObject pyCallable)
-
-
Method Details
-
init
public static void init()Ensure that the class initializer runs. -
isVectorizableReturnType
public boolean isVectorizableReturnType()- Specified by:
isVectorizableReturnType
in interfacePyCallableWrapper
-
getAttribute
- Specified by:
getAttribute
in interfacePyCallableWrapper
-
getAttribute
- Specified by:
getAttribute
in interfacePyCallableWrapper
-
buildArgumentsChunked
-
parseSignature
public void parseSignature()- Specified by:
parseSignature
in interfacePyCallableWrapper
-
isLosslessWideningPrimitiveConversion
-
verifyArguments
- Specified by:
verifyArguments
in interfacePyCallableWrapper
-
vectorizedCallable
public org.jpy.PyObject vectorizedCallable() -
call
- Specified by:
call
in interfacePyCallableWrapper
-
isVectorized
public boolean isVectorized()- Specified by:
isVectorized
in interfacePyCallableWrapper
-
isVectorizable
public boolean isVectorizable()- Specified by:
isVectorizable
in interfacePyCallableWrapper
-
setVectorizable
public void setVectorizable(boolean vectorizable) - Specified by:
setVectorizable
in interfacePyCallableWrapper
-
initializeChunkArguments
public void initializeChunkArguments()- Specified by:
initializeChunkArguments
in interfacePyCallableWrapper
-
addChunkArgument
- Specified by:
addChunkArgument
in interfacePyCallableWrapper
-
getSignature
- Specified by:
getSignature
in interfacePyCallableWrapper
-