Package com.kenai.jffi
Class Invoker
java.lang.Object
com.kenai.jffi.Invoker
- Direct Known Subclasses:
Invoker.ILP32
,Invoker.LP64
Provides native function invocation facilities.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final class
A 32 bit invoker implementationprivate static final class
A 64 bit invoker implementationprivate static final class
Lazy initialization singleton holder -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
Invoker()
Creates a newInvoker
(package private)
Invoker
(Foreign foreign, ObjectParameterInvoker objectParameterInvoker) -
Method Summary
Modifier and TypeMethodDescriptionstatic Invoker
Gets theInvoker
singleton.final ObjectParameterInvoker
Gets the fast-path object parameter invoker.final void
invoke
(CallContext ctx, long function, long returnBuffer, long[] parameters) Invokes a function, with the parameters loaded into native memory buffers, and the function result is stored in a native memory buffer.final void
Invokes a function, with the parameters loaded into native memory buffers, and the function result is stored in a native memory buffer.abstract long
invokeAddress
(CallContext ctx, long function, HeapInvocationBuffer buffer) Invokes a function and returns a native memory address.long
invokeAddress
(Function function, HeapInvocationBuffer buffer) Invokes a function and returns a native memory address.private int
invokeArrayWithObjectsInt32
(long ctx, long function, HeapInvocationBuffer buffer, ObjectBuffer objectBuffer) Convenience method to pass the objects and object descriptor array down as normal arguments, so hotspot can optimize it.private long
invokeArrayWithObjectsInt64
(long ctx, long function, HeapInvocationBuffer buffer, ObjectBuffer objectBuffer) Convenience method to pass the objects and object descriptor array down as normal arguments, so hotspot can optimize it.final BigDecimal
invokeBigDecimal
(CallContext ctx, long function, HeapInvocationBuffer buffer) Invokes a function and returns a 64 bit floating point value.final BigDecimal
invokeBigDecimal
(Function function, HeapInvocationBuffer buffer) Invokes a function and returns a 64 bit floating point value.final double
invokeDouble
(CallContext ctx, long function, HeapInvocationBuffer buffer) Invokes a function and returns a 64 bit floating point value.final double
invokeDouble
(Function function, HeapInvocationBuffer buffer) Invokes a function and returns a 64 bit floating point value.final float
invokeFloat
(CallContext ctx, long function, HeapInvocationBuffer buffer) Invokes a function and returns a 32 bit floating point value.final float
invokeFloat
(Function function, HeapInvocationBuffer buffer) Invokes a function and returns a 32 bit floating point value.final int
invokeI0
(CallContext context, long function) Invokes a function with no arguments, and returns a 32 bit integer.final int
invokeI0NoErrno
(CallContext context, long function) final int
invokeI1
(CallContext context, long function, int arg1) Invokes a function with one integer argument, and returns a 32 bit integer.final int
invokeI1NoErrno
(CallContext context, long function, int arg1) final int
invokeI2
(CallContext context, long function, int arg1, int arg2) Invokes a function with two integer arguments, and returns a 32 bit integer.final int
invokeI2NoErrno
(CallContext context, long function, int arg1, int arg2) final int
invokeI3
(CallContext context, long function, int arg1, int arg2, int arg3) Invokes a function with three integer arguments, and returns a 32 bit integer.final int
invokeI3NoErrno
(CallContext context, long function, int arg1, int arg2, int arg3) final int
invokeI4
(CallContext context, long function, int arg1, int arg2, int arg3, int arg4) Invokes a function with four integer arguments, and returns a 32 bit integer.final int
invokeI4NoErrno
(CallContext context, long function, int arg1, int arg2, int arg3, int arg4) final int
invokeI5
(CallContext context, long function, int arg1, int arg2, int arg3, int arg4, int arg5) Invokes a function with five integer arguments, and returns a 32 bit integer.final int
invokeI5NoErrno
(CallContext context, long function, int arg1, int arg2, int arg3, int arg4, int arg5) final int
invokeI6
(CallContext context, long function, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6) Invokes a function with six integer arguments, and returns a 32 bit integer.final int
invokeI6NoErrno
(CallContext context, long function, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6) final int
invokeIIIIIIrI
(Function function, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6) Deprecated.final int
invokeIIIIIrI
(Function function, int arg1, int arg2, int arg3, int arg4, int arg5) Deprecated.final int
invokeIIIIrI
(Function function, int arg1, int arg2, int arg3, int arg4) Deprecated.final int
invokeIIIrI
(Function function, int arg1, int arg2, int arg3) Deprecated.final int
invokeIIrI
(Function function, int arg1, int arg2) Deprecated.final int
invokeInt
(CallContext ctx, long function, HeapInvocationBuffer buffer) Invokes a function and returns a 32 bit integer value.final int
invokeInt
(Function function, HeapInvocationBuffer buffer) Invokes a function and returns a 32 bit integer value.final int
Deprecated.final long
invokeL0
(CallContext context, long function) Invokes a function with no arguments, and returns a 64 bit integer.final long
invokeL0NoErrno
(CallContext context, long function) final long
invokeL1
(CallContext context, long function, long arg1) Invokes a function with one 64 bit integer argument, and returns a 64 bit integer.final long
invokeL1NoErrno
(CallContext context, long function, long arg1) final long
invokeL2
(CallContext context, long function, long arg1, long arg2) Invokes a function with two 64 bit integer arguments, and returns a 64 bit integer.final long
invokeL2NoErrno
(CallContext context, long function, long arg1, long arg2) final long
invokeL3
(CallContext context, long function, long arg1, long arg2, long arg3) Invokes a function with three 64 bit integer arguments, and returns a 64 bit integer.final long
invokeL3NoErrno
(CallContext context, long function, long arg1, long arg2, long arg3) final long
invokeL4
(CallContext context, long function, long arg1, long arg2, long arg3, long arg4) Invokes a function with four 64 bit integer arguments, and returns a 64 bit integer.final long
invokeL4NoErrno
(CallContext context, long function, long arg1, long arg2, long arg3, long arg4) final long
invokeL5
(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5) Invokes a function with five 64 bit integer arguments, and returns a 64 bit integer.final long
invokeL5NoErrno
(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5) final long
invokeL6
(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6) Invokes a function with six 64 bit integer arguments, and returns a 64 bit integer.final long
invokeL6NoErrno
(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6) final long
invokeLLLLLLrL
(Function function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6) Invokes a function with six 64 bit integer arguments, and returns a 64 bit integer.final long
invokeLLLLLrL
(Function function, long arg1, long arg2, long arg3, long arg4, long arg5) Invokes a function with five 64 bit integer arguments, and returns a 64 bit integer.final long
invokeLLLLrL
(Function function, long arg1, long arg2, long arg3, long arg4) Invokes a function with four 64 bit integer arguments, and returns a 64 bit integer.final long
invokeLLLrL
(Function function, long arg1, long arg2, long arg3) Invokes a function with three 64 bit integer arguments, and returns a 64 bit integer.final long
invokeLLrL
(Function function, long arg1, long arg2) Invokes a function with two 64 bit integer arguments, and returns a 64 bit integer.final long
invokeLong
(CallContext ctx, long function, HeapInvocationBuffer buffer) Invokes a function and returns a 64 bit integer value.final long
invokeLong
(Function function, HeapInvocationBuffer buffer) Invokes a function and returns a 64 bit integer value.final long
Invokes a function with one 64 bit integer argument, and returns a 64 bit integer.final long
invokeN0
(CallContext context, long function) Invokes a function with no arguments, and returns a numeric value.final long
invokeN1
(CallContext context, long function, long arg1) Invokes a function with one numeric argument, and returns a numeric value.final long
invokeN1
(CallContext ctx, long function, long n1, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN1O1
(CallContext ctx, long function, long n1, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN2
(CallContext context, long function, long arg1, long arg2) Invokes a function with two numeric arguments, and returns a numeric value.final long
invokeN2
(CallContext ctx, long function, long n1, long n2, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN2
(CallContext ctx, long function, long n1, long n2, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) final long
invokeN2O1
(CallContext ctx, long function, long n1, long n2, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN2O2
(CallContext ctx, long function, long n1, long n2, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) final long
invokeN3
(CallContext context, long function, long arg1, long arg2, long arg3) Invokes a function with three numeric arguments, and returns a numeric value.final long
invokeN3
(CallContext ctx, long function, long n1, long n2, long n3, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN3
(CallContext ctx, long function, long n1, long n2, long n3, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) final long
invokeN3
(CallContext ctx, long function, long n1, long n2, long n3, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) final long
invokeN3O1
(CallContext ctx, long function, long n1, long n2, long n3, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN3O2
(CallContext ctx, long function, long n1, long n2, long n3, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) final long
invokeN3O3
(CallContext ctx, long function, long n1, long n2, long n3, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) final long
invokeN4
(CallContext context, long function, long arg1, long arg2, long arg3, long arg4) Invokes a function with four numeric arguments, and returns a numeric value.final long
invokeN4
(CallContext ctx, long function, long n1, long n2, long n3, long n4, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN4
(CallContext ctx, long function, long n1, long n2, long n3, long n4, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) final long
invokeN4
(CallContext ctx, long function, long n1, long n2, long n3, long n4, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) final long
invokeN4
(CallContext ctx, long function, long n1, long n2, long n3, long n4, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info) final long
invokeN4O1
(CallContext ctx, long function, long n1, long n2, long n3, long n4, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN4O2
(CallContext ctx, long function, long n1, long n2, long n3, long n4, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) final long
invokeN4O3
(CallContext ctx, long function, long n1, long n2, long n3, long n4, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) final long
invokeN5
(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5) Invokes a function with five numeric arguments, and returns a numeric value.final long
invokeN5
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN5
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) final long
invokeN5
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) final long
invokeN5
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info) final long
invokeN5
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info, Object o5, ObjectParameterStrategy s5, ObjectParameterInfo o5info) final long
invokeN5O1
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN5O2
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) final long
invokeN5O3
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) final long
invokeN6
(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6) Invokes a function with six numeric arguments, and returns a numeric value.final long
invokeN6
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN6
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) final long
invokeN6
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) final long
invokeN6
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info) final long
invokeN6
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info, Object o5, ObjectParameterStrategy s5, ObjectParameterInfo o5info) final long
invokeN6
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info, Object o5, ObjectParameterStrategy s5, ObjectParameterInfo o5info, Object o6, ObjectParameterStrategy s6, ObjectParameterInfo o6info) final long
invokeN6O1
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) final long
invokeN6O2
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) final long
invokeN6O3
(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) final long
invokeNNNNNNrN
(Function function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6) Invokes a function with six numeric arguments, and returns a numeric value.final long
invokeNNNNNrN
(Function function, long arg1, long arg2, long arg3, long arg4, long arg5) Invokes a function with five numeric arguments, and returns a numeric value.final long
invokeNNNNrN
(Function function, long arg1, long arg2, long arg3, long arg4) Invokes a function with four numeric arguments, and returns a numeric value.final long
invokeNNNO1rN
(Function function, long n1, long n2, long n3, Object o1, int o1off, int o1len, ObjectParameterInfo o1flags) Deprecated.final long
invokeNNNO2rN
(Function function, long n1, long n2, long n3, Object o1, int o1off, int o1len, ObjectParameterInfo o1flags, Object o2, int o2off, int o2len, ObjectParameterInfo o2flags) Deprecated.final long
invokeNNNrN
(Function function, long arg1, long arg2, long arg3) Invokes a function with three numeric arguments, and returns a numeric value.final long
invokeNNO1rN
(Function function, long n1, long n2, Object o1, int o1off, int o1len, ObjectParameterInfo o1flags) Deprecated.final long
invokeNNO2rN
(Function function, long n1, long n2, Object o1, int o1off, int o1len, ObjectParameterInfo o1flags, Object o2, int o2off, int o2len, ObjectParameterInfo o2flags) Deprecated.final long
invokeNNrN
(Function function, long arg1, long arg2) Invokes a function with two numeric arguments, and returns a numeric value.final int
invokeNoErrnoIIIrI
(Function function, int arg1, int arg2, int arg3) Deprecated.final int
invokeNoErrnoIIrI
(Function function, int arg1, int arg2) Deprecated.final int
invokeNoErrnoIrI
(Function function, int arg1) Deprecated.final int
invokeNoErrnoVrI
(Function function) Deprecated.final long
Invokes a function with one numeric argument, and returns a numeric value.final Object
invokeObject
(Function function, HeapInvocationBuffer buffer) final byte[]
invokeStruct
(CallContext ctx, long function, HeapInvocationBuffer buffer) Invokes a function that returns a C struct by value.final void
invokeStruct
(CallContext ctx, long function, HeapInvocationBuffer buffer, byte[] returnBuffer, int offset) Invokes a function that returns a C struct by value.final byte[]
invokeStruct
(Function function, HeapInvocationBuffer buffer) Invokes a function that returns a C struct by value.final void
invokeStruct
(Function function, HeapInvocationBuffer buffer, byte[] returnBuffer, int offset) Invokes a function that returns a C struct by value.final int
Deprecated.final long
Invokes a function with no arguments, and returns a 64 bit integer.final long
Invokes a function with no arguments, and returns a numeric value.private static RuntimeException
newHeapObjectCountError
(int objCount) private static RuntimeException
newInsufficientObjectCountError
(int objCount) private static RuntimeException
newObjectCountError
(int objCount)
-
Field Details
-
foreign
-
objectParameterInvoker
-
-
Constructor Details
-
Invoker
private Invoker()Creates a newInvoker
-
Invoker
Invoker(Foreign foreign, ObjectParameterInvoker objectParameterInvoker)
-
-
Method Details
-
getInstance
Gets theInvoker
singleton.- Returns:
- An instance of
Invoker
.
-
getObjectParameterInvoker
Gets the fast-path object parameter invoker.- Returns:
- An instance of
ObjectParameterInvoker
-
invokeI0
Invokes a function with no arguments, and returns a 32 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.- Returns:
- A 32 bit integer value.
-
invokeI1
Invokes a function with one integer argument, and returns a 32 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- A 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeI2
Invokes a function with two integer arguments, and returns a 32 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeI3
Invokes a function with three integer arguments, and returns a 32 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeI4
public final int invokeI4(CallContext context, long function, int arg1, int arg2, int arg3, int arg4) Invokes a function with four integer arguments, and returns a 32 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.arg4
- The fourth 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeI5
public final int invokeI5(CallContext context, long function, int arg1, int arg2, int arg3, int arg4, int arg5) Invokes a function with five integer arguments, and returns a 32 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.arg4
- The fourth 32 bit integer argument.arg5
- The fifth 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeI6
public final int invokeI6(CallContext context, long function, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6) Invokes a function with six integer arguments, and returns a 32 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.arg4
- The fourth 32 bit integer argument.arg5
- The fifth 32 bit integer argument.arg6
- The sixth 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeI0NoErrno
-
invokeI1NoErrno
-
invokeI2NoErrno
-
invokeI3NoErrno
-
invokeI4NoErrno
public final int invokeI4NoErrno(CallContext context, long function, int arg1, int arg2, int arg3, int arg4) -
invokeI5NoErrno
public final int invokeI5NoErrno(CallContext context, long function, int arg1, int arg2, int arg3, int arg4, int arg5) -
invokeI6NoErrno
public final int invokeI6NoErrno(CallContext context, long function, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6) -
invokeVrI
Deprecated.Invokes a function with no arguments, and returns a 32 bit integer.- Parameters:
function
- TheFunction
to invoke.- Returns:
- A 32 bit integer value.
-
invokeNoErrnoVrI
Deprecated.Invokes a function with no arguments, and returns a 32 bit integer. This method does not save the errno value.- Parameters:
function
- TheFunction
to invoke.- Returns:
- A 32 bit integer value.
-
invokeIrI
Deprecated.Invokes a function with one integer argument, and returns a 32 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- A 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeNoErrnoIrI
Deprecated.Invokes a function with one integer argument, and returns a 32 bit integer. This method does not save the errno value.- Parameters:
function
- TheFunction
to invoke.arg1
- A 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeIIrI
Deprecated.Invokes a function with two integer arguments, and returns a 32 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeNoErrnoIIrI
Deprecated.Invokes a function with two integer arguments, and returns a 32 bit integer. This method does not save the errno value.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeIIIrI
Deprecated.Invokes a function with three integer arguments, and returns a 32 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeNoErrnoIIIrI
Deprecated.Invokes a function with three integer arguments, and returns a 32 bit integer. This method does not save the errno value.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeIIIIrI
@Deprecated public final int invokeIIIIrI(Function function, int arg1, int arg2, int arg3, int arg4) Deprecated.Invokes a function with four integer arguments, and returns a 32 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.arg4
- The fourth 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeIIIIIrI
@Deprecated public final int invokeIIIIIrI(Function function, int arg1, int arg2, int arg3, int arg4, int arg5) Deprecated.Invokes a function with five integer arguments, and returns a 32 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.arg4
- The fourth 32 bit integer argument.arg5
- The fifth 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeIIIIIIrI
@Deprecated public final int invokeIIIIIIrI(Function function, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6) Deprecated.Invokes a function with six integer arguments, and returns a 32 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.arg4
- The fourth 32 bit integer argument.arg5
- The fifth 32 bit integer argument.arg6
- The sixth 32 bit integer argument.- Returns:
- A 32 bit integer value.
-
invokeL0
Invokes a function with no arguments, and returns a 64 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.- Returns:
- A 64 bit integer value.
-
invokeL1
Invokes a function with one 64 bit integer argument, and returns a 64 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeL2
Invokes a function with two 64 bit integer arguments, and returns a 64 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeL3
Invokes a function with three 64 bit integer arguments, and returns a 64 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeL4
public final long invokeL4(CallContext context, long function, long arg1, long arg2, long arg3, long arg4) Invokes a function with four 64 bit integer arguments, and returns a 64 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.arg4
- The fourth 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeL5
public final long invokeL5(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5) Invokes a function with five 64 bit integer arguments, and returns a 64 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.arg4
- The fourth 64 bit integer argument.arg5
- The fifth 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeL6
public final long invokeL6(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6) Invokes a function with six 64 bit integer arguments, and returns a 64 bit integer.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.arg4
- The fourth 64 bit integer argument.arg5
- The fifth 64 bit integer argument.arg6
- The sixth 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeL0NoErrno
-
invokeL1NoErrno
-
invokeL2NoErrno
-
invokeL3NoErrno
public final long invokeL3NoErrno(CallContext context, long function, long arg1, long arg2, long arg3) -
invokeL4NoErrno
public final long invokeL4NoErrno(CallContext context, long function, long arg1, long arg2, long arg3, long arg4) -
invokeL5NoErrno
public final long invokeL5NoErrno(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5) -
invokeL6NoErrno
public final long invokeL6NoErrno(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6) -
invokeVrL
Invokes a function with no arguments, and returns a 64 bit integer.- Parameters:
function
- TheFunction
to invoke.- Returns:
- A 64 bit integer value.
-
invokeLrL
Invokes a function with one 64 bit integer argument, and returns a 64 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeLLrL
Invokes a function with two 64 bit integer arguments, and returns a 64 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeLLLrL
Invokes a function with three 64 bit integer arguments, and returns a 64 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeLLLLrL
Invokes a function with four 64 bit integer arguments, and returns a 64 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.arg4
- The fourth 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeLLLLLrL
public final long invokeLLLLLrL(Function function, long arg1, long arg2, long arg3, long arg4, long arg5) Invokes a function with five 64 bit integer arguments, and returns a 64 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.arg4
- The fourth 64 bit integer argument.arg5
- The fifth 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeLLLLLLrL
public final long invokeLLLLLLrL(Function function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6) Invokes a function with six 64 bit integer arguments, and returns a 64 bit integer.- Parameters:
function
- TheFunction
to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.arg4
- The fourth 64 bit integer argument.arg5
- The fifth 64 bit integer argument.arg6
- The sixth 64 bit integer argument.- Returns:
- A 64 bit integer value.
-
invokeN0
Invokes a function with no arguments, and returns a numeric value.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.- Returns:
- A numeric value.
-
invokeN1
Invokes a function with one numeric argument, and returns a numeric value.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The numeric argument.- Returns:
- A numeric value.
-
invokeN2
Invokes a function with two numeric arguments, and returns a numeric value.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.- Returns:
- A numeric value.
-
invokeN3
Invokes a function with three numeric arguments, and returns a numeric value.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.- Returns:
- A numeric value.
-
invokeN4
public final long invokeN4(CallContext context, long function, long arg1, long arg2, long arg3, long arg4) Invokes a function with four numeric arguments, and returns a numeric value.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.arg4
- The fourth numeric argument.- Returns:
- A numeric value.
-
invokeN5
public final long invokeN5(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5) Invokes a function with five numeric arguments, and returns a numeric value.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.arg4
- The fourth numeric argument.arg5
- The fifth numeric argument.- Returns:
- A numeric value.
-
invokeN6
public final long invokeN6(CallContext context, long function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6) Invokes a function with six numeric arguments, and returns a numeric value.- Parameters:
context
- The CallContext describing how to invoke the function.function
- Address of the native function to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.arg4
- The fourth numeric argument.arg5
- The fifth numeric argument.arg6
- The sixth numeric argument.- Returns:
- A numeric value.
-
invokeVrN
Invokes a function with no arguments, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.- Returns:
- A numeric value.
-
invokeNrN
Invokes a function with one numeric argument, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.arg1
- The numeric argument.- Returns:
- A numeric value.
-
invokeNNrN
Invokes a function with two numeric arguments, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.- Returns:
- A numeric value.
-
invokeNNNrN
Invokes a function with three numeric arguments, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.- Returns:
- A numeric value.
-
invokeNNNNrN
Invokes a function with four numeric arguments, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.arg4
- The fourth numeric argument.- Returns:
- A numeric value.
-
invokeNNNNNrN
public final long invokeNNNNNrN(Function function, long arg1, long arg2, long arg3, long arg4, long arg5) Invokes a function with five numeric arguments, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.arg4
- The fourth numeric argument.arg5
- The fifth numeric argument.- Returns:
- A numeric value.
-
invokeNNNNNNrN
public final long invokeNNNNNNrN(Function function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6) Invokes a function with six numeric arguments, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.arg4
- The fourth numeric argument.arg5
- The fifth numeric argument.arg6
- The sixth numeric argument.- Returns:
- A numeric value.
-
invokeNNO1rN
@Deprecated public final long invokeNNO1rN(Function function, long n1, long n2, Object o1, int o1off, int o1len, ObjectParameterInfo o1flags) Deprecated.Invokes a function with two numeric arguments, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.n1
- first numeric argument.n2
- second numeric argument.o1
- array or buffer, to be passed as a pointer for the first numeric parameter.o1off
- offset from the start of the array pr buffer.o1len
- length of the array to use.o1flags
- object flags (type, direction, parameter index).
-
invokeNNO2rN
@Deprecated public final long invokeNNO2rN(Function function, long n1, long n2, Object o1, int o1off, int o1len, ObjectParameterInfo o1flags, Object o2, int o2off, int o2len, ObjectParameterInfo o2flags) Deprecated.Invokes a function with two numeric arguments, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.n1
- first numeric argument.n2
- second numeric argument.o1
- array or buffer, to be passed as a pointer for the first numeric parameter.o1off
- offset from the start of the array pr buffer.o1len
- length of the array to use.o1flags
- object flags (type, direction, parameter index).
-
invokeNNNO1rN
@Deprecated public final long invokeNNNO1rN(Function function, long n1, long n2, long n3, Object o1, int o1off, int o1len, ObjectParameterInfo o1flags) Deprecated.Invokes a function with two numeric arguments, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.
-
invokeNNNO2rN
@Deprecated public final long invokeNNNO2rN(Function function, long n1, long n2, long n3, Object o1, int o1off, int o1len, ObjectParameterInfo o1flags, Object o2, int o2off, int o2len, ObjectParameterInfo o2flags) Deprecated.Invokes a function with two numeric arguments, and returns a numeric value.- Parameters:
function
- TheFunction
to invoke.
-
newObjectCountError
-
newInsufficientObjectCountError
-
newHeapObjectCountError
-
invokeN1O1
public final long invokeN1O1(CallContext ctx, long function, long n1, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN2O1
public final long invokeN2O1(CallContext ctx, long function, long n1, long n2, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN2O2
public final long invokeN2O2(CallContext ctx, long function, long n1, long n2, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) -
invokeN3O1
public final long invokeN3O1(CallContext ctx, long function, long n1, long n2, long n3, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN3O2
public final long invokeN3O2(CallContext ctx, long function, long n1, long n2, long n3, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) -
invokeN3O3
public final long invokeN3O3(CallContext ctx, long function, long n1, long n2, long n3, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) -
invokeN4O1
public final long invokeN4O1(CallContext ctx, long function, long n1, long n2, long n3, long n4, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN4O2
public final long invokeN4O2(CallContext ctx, long function, long n1, long n2, long n3, long n4, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) -
invokeN4O3
public final long invokeN4O3(CallContext ctx, long function, long n1, long n2, long n3, long n4, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) -
invokeN5O1
public final long invokeN5O1(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN5O2
public final long invokeN5O2(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) -
invokeN5O3
public final long invokeN5O3(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) -
invokeN6O1
public final long invokeN6O1(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN6O2
public final long invokeN6O2(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) -
invokeN6O3
public final long invokeN6O3(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) -
invokeN1
public final long invokeN1(CallContext ctx, long function, long n1, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN2
public final long invokeN2(CallContext ctx, long function, long n1, long n2, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN2
public final long invokeN2(CallContext ctx, long function, long n1, long n2, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) -
invokeN3
public final long invokeN3(CallContext ctx, long function, long n1, long n2, long n3, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN3
public final long invokeN3(CallContext ctx, long function, long n1, long n2, long n3, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) -
invokeN3
public final long invokeN3(CallContext ctx, long function, long n1, long n2, long n3, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) -
invokeN4
public final long invokeN4(CallContext ctx, long function, long n1, long n2, long n3, long n4, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN4
public final long invokeN4(CallContext ctx, long function, long n1, long n2, long n3, long n4, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) -
invokeN4
public final long invokeN4(CallContext ctx, long function, long n1, long n2, long n3, long n4, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) -
invokeN4
public final long invokeN4(CallContext ctx, long function, long n1, long n2, long n3, long n4, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info) -
invokeN5
public final long invokeN5(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN5
public final long invokeN5(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) -
invokeN5
public final long invokeN5(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) -
invokeN5
public final long invokeN5(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info) -
invokeN5
public final long invokeN5(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info, Object o5, ObjectParameterStrategy s5, ObjectParameterInfo o5info) -
invokeN6
public final long invokeN6(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info) -
invokeN6
public final long invokeN6(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info) -
invokeN6
public final long invokeN6(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info) -
invokeN6
public final long invokeN6(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info) -
invokeN6
public final long invokeN6(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info, Object o5, ObjectParameterStrategy s5, ObjectParameterInfo o5info) -
invokeN6
public final long invokeN6(CallContext ctx, long function, long n1, long n2, long n3, long n4, long n5, long n6, int objCount, Object o1, ObjectParameterStrategy s1, ObjectParameterInfo o1info, Object o2, ObjectParameterStrategy s2, ObjectParameterInfo o2info, Object o3, ObjectParameterStrategy s3, ObjectParameterInfo o3info, Object o4, ObjectParameterStrategy s4, ObjectParameterInfo o4info, Object o5, ObjectParameterStrategy s5, ObjectParameterInfo o5info, Object o6, ObjectParameterStrategy s6, ObjectParameterInfo o6info) -
invokeAddress
Invokes a function and returns a native memory address.- Parameters:
function
- TheFunction
to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeAddress
Invokes a function and returns a native memory address.- Parameters:
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeInt
Invokes a function and returns a 32 bit integer value.- Parameters:
function
- TheFunction
to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeInt
Invokes a function and returns a 32 bit integer value.- Parameters:
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeLong
Invokes a function and returns a 64 bit integer value.- Parameters:
function
- TheFunction
to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeLong
Invokes a function and returns a 64 bit integer value.- Parameters:
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeFloat
Invokes a function and returns a 32 bit floating point value.- Parameters:
function
- TheFunction
to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeFloat
Invokes a function and returns a 32 bit floating point value.- Parameters:
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeDouble
Invokes a function and returns a 64 bit floating point value.- Parameters:
function
- TheFunction
to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeDouble
Invokes a function and returns a 64 bit floating point value.- Parameters:
ctx
- The call context describing how to call the native function.function
- The address of the native function to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeBigDecimal
Invokes a function and returns a 64 bit floating point value.- Parameters:
function
- TheFunction
to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeBigDecimal
public final BigDecimal invokeBigDecimal(CallContext ctx, long function, HeapInvocationBuffer buffer) Invokes a function and returns a 64 bit floating point value.- Parameters:
function
- TheFunction
to invoke.buffer
- A buffer containing the arguments to the function.- Returns:
- A native memory address.
-
invokeStruct
Invokes a function that returns a C struct by value.- Parameters:
function
- TheFunction
to invoke.buffer
- The parameter buffer.- Returns:
- A byte array with the return value encoded in native byte order.
-
invokeStruct
Invokes a function that returns a C struct by value.- Parameters:
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- The parameter buffer.- Returns:
- A byte array with the return value encoded in native byte order.
-
invokeStruct
public final void invokeStruct(Function function, HeapInvocationBuffer buffer, byte[] returnBuffer, int offset) Invokes a function that returns a C struct by value.- Parameters:
function
- TheFunction
to invoke.buffer
- The parameter buffer.returnBuffer
- The output buffer to place the return value in.offset
- The offset within returnBuffer to place the return value.
-
invokeStruct
public final void invokeStruct(CallContext ctx, long function, HeapInvocationBuffer buffer, byte[] returnBuffer, int offset) Invokes a function that returns a C struct by value.- Parameters:
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- The parameter buffer.returnBuffer
- The output buffer to place the return value in.offset
- The offset within returnBuffer to place the return value.
-
invokeObject
-
invoke
Invokes a function, with the parameters loaded into native memory buffers, and the function result is stored in a native memory buffer.- Parameters:
function
- TheFunction
to invoke.returnBuffer
- The address of the native buffer to place the result of the function call in.parameters
- An array of addresses of the function parameters.
-
invoke
Invokes a function, with the parameters loaded into native memory buffers, and the function result is stored in a native memory buffer.- Parameters:
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.returnBuffer
- The address of the native buffer to place the result of the function call in.parameters
- An array of addresses of the function parameters.
-
invokeArrayWithObjectsInt32
private int invokeArrayWithObjectsInt32(long ctx, long function, HeapInvocationBuffer buffer, ObjectBuffer objectBuffer) Convenience method to pass the objects and object descriptor array down as normal arguments, so hotspot can optimize it. This is faster than the native code pulling the objects and descriptors out of arrays.- Parameters:
function
- The native function to invoke.buffer
- A buffer containing the arguments to the function.objectBuffer
- A buffer containing objects to be passed to the native function.- Returns:
- A 32 bit integer value.
-
invokeArrayWithObjectsInt64
private long invokeArrayWithObjectsInt64(long ctx, long function, HeapInvocationBuffer buffer, ObjectBuffer objectBuffer) Convenience method to pass the objects and object descriptor array down as normal arguments, so hotspot can optimize it. This is faster than the native code pulling the objects and descriptors out of arrays.- Parameters:
function
- The native function to invoke.buffer
- A buffer containing the arguments to the function.objectBuffer
- A buffer containing objects to be passed to the native function.- Returns:
- A 64 bit integer value.
-