public abstract class JITNativeInvoker extends NativeInvoker
DynamicMethod.NativeCall, DynamicMethod.Version
Modifier and Type | Field and Description |
---|---|
protected int |
arity |
protected com.kenai.jffi.CallContext |
callContext |
protected com.kenai.jffi.Function |
function |
protected long |
functionAddress |
protected static com.kenai.jffi.Invoker |
invoker |
protected CachingCallSite |
parameterCallSite0 |
protected CachingCallSite |
parameterCallSite1 |
protected CachingCallSite |
parameterCallSite2 |
protected CachingCallSite |
parameterCallSite3 |
protected CachingCallSite |
parameterCallSite4 |
protected CachingCallSite |
parameterCallSite5 |
protected CachingCallSite |
parameterCallSite6 |
protected NativeDataConverter |
parameterConverter0 |
protected NativeDataConverter |
parameterConverter1 |
protected NativeDataConverter |
parameterConverter2 |
protected NativeDataConverter |
parameterConverter3 |
protected NativeDataConverter |
parameterConverter4 |
protected NativeDataConverter |
parameterConverter5 |
protected com.kenai.jffi.ObjectParameterInfo |
parameterInfo0 |
protected com.kenai.jffi.ObjectParameterInfo |
parameterInfo1 |
protected com.kenai.jffi.ObjectParameterInfo |
parameterInfo2 |
protected com.kenai.jffi.ObjectParameterInfo |
parameterInfo3 |
protected com.kenai.jffi.ObjectParameterInfo |
parameterInfo4 |
protected com.kenai.jffi.ObjectParameterInfo |
parameterInfo5 |
protected NativeDataConverter |
resultConverter |
protected org.jruby.ext.ffi.jffi.Signature |
signature |
definedClass, flags, handle, implementationClass, name, protectedClass, serialNumber
Constructor and Description |
---|
JITNativeInvoker(RubyModule implementationClass,
com.kenai.jffi.Function function,
org.jruby.ext.ffi.jffi.Signature signature) |
Modifier and Type | Method and Description |
---|---|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name)
Arity 0, no block
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1)
Arity 1, no block
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
java.lang.String name,
IRubyObject[] args)
A default implementation of n-arity, non-block 'call' method,
which simply calls the n-arity, block-receiving version with
the arg list and Block.NULL_BLOCK.
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2)
Arity 2, no block
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
IRubyObject arg3)
Arity 3, no block
|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
IRubyObject arg3,
IRubyObject arg4) |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
IRubyObject arg3,
IRubyObject arg4,
IRubyObject arg5) |
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule klazz,
java.lang.String name,
IRubyObject arg1,
IRubyObject arg2,
IRubyObject arg3,
IRubyObject arg4,
IRubyObject arg5,
IRubyObject arg6) |
call, dup, getArity, isNative
calculateProtectedClass, call, call, call, call, getCallConfig, getDefinedClass, getHandle, getImplementationClass, getMethodData, getName, getProtectedClass, getRealMethod, getSerialNumber, getVisibility, init, init, isBuiltin, isCallableFrom, isImplementedBy, isNotImplemented, isNull, isUndefined, setCallConfig, setDefinedClass, setHandle, setImplementationClass, setIsBuiltin, setNotImplemented, setVisibility
protected static final com.kenai.jffi.Invoker invoker
protected final com.kenai.jffi.Function function
protected final com.kenai.jffi.CallContext callContext
protected final long functionAddress
protected final org.jruby.ext.ffi.jffi.Signature signature
protected final int arity
protected final NativeDataConverter resultConverter
protected final NativeDataConverter parameterConverter0
protected final NativeDataConverter parameterConverter1
protected final NativeDataConverter parameterConverter2
protected final NativeDataConverter parameterConverter3
protected final NativeDataConverter parameterConverter4
protected final NativeDataConverter parameterConverter5
protected final com.kenai.jffi.ObjectParameterInfo parameterInfo0
protected final com.kenai.jffi.ObjectParameterInfo parameterInfo1
protected final com.kenai.jffi.ObjectParameterInfo parameterInfo2
protected final com.kenai.jffi.ObjectParameterInfo parameterInfo3
protected final com.kenai.jffi.ObjectParameterInfo parameterInfo4
protected final com.kenai.jffi.ObjectParameterInfo parameterInfo5
protected final CachingCallSite parameterCallSite0
protected final CachingCallSite parameterCallSite1
protected final CachingCallSite parameterCallSite2
protected final CachingCallSite parameterCallSite3
protected final CachingCallSite parameterCallSite4
protected final CachingCallSite parameterCallSite5
protected final CachingCallSite parameterCallSite6
public JITNativeInvoker(RubyModule implementationClass, com.kenai.jffi.Function function, org.jruby.ext.ffi.jffi.Signature signature)
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3)
DynamicMethod
call
in class DynamicMethod
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, IRubyObject arg4)
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, IRubyObject arg4, IRubyObject arg5)
public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, java.lang.String name, IRubyObject arg1, IRubyObject arg2, IRubyObject arg3, IRubyObject arg4, IRubyObject arg5, IRubyObject arg6)
public final IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, java.lang.String name, IRubyObject[] args)
DynamicMethod
call
in class DynamicMethod
context
- The thread context for the currently executing threadself
- The 'self' or 'receiver' object to use for this callclazz
- The Ruby class against which this method is bindingname
- The incoming name used to invoke this methodargs
- The first argument to this invocationCopyright © 2001-2018 JRuby. All Rights Reserved.