Top Description Inners Fields Constructors Methods
org.jruby.ext.ffi.jffi

public Class CallbackManager

extends CallbackManager
Class Inheritance
Imports
com.kenai.jffi.CallingConvention, .Closure, .ClosureManager, org.jruby.Ruby, .RubyClass, .RubyModule, .RubyObject, org.jruby.ext.ffi.AbstractInvoker, .CallbackInfo, .Type, org.jruby.runtime.ThreadContext, java.util.Map, .WeakHashMap

Manages Callback instances for the low level FFI backend.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
CallbackManager.SingletonHolder

Holder for the single instance of CallbackManager

Field Summary

Modifier and TypeField and Description
private final Map<CallbackInfo, NativeCallbackFactory>

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public static RubyClass

Returns:

The newly created ruby class
createCallbackClass
(ThreadContext
the current thread context
context
,
RubyModule
The module to place the class in
FFI
)

Creates a Callback class for a ruby runtime

public final Pointer
public final synchronized NativeCallbackFactory
public static final CallbackManager
getInstance()

Gets the singleton instance of CallbackManager

pack-priv final CallbackMemoryIO
newClosure(Ruby runtime, Type returnType, Type[] parameterTypes, Object proc, CallingConvention convention)

Inherited from org.jruby.ext.ffi.CallbackManager:
getCallback

Field Detail

factoriesback to summary
private final Map<CallbackInfo, NativeCallbackFactory> factories

Constructor Detail

CallbackManagerback to summary
public CallbackManager()

Method Detail

createCallbackClassback to summary
public static RubyClass createCallbackClass(ThreadContext context, RubyModule FFI)

Creates a Callback class for a ruby runtime

Parameters
context:ThreadContext

the current thread context

FFI:RubyModule

The module to place the class in

Returns:RubyClass

The newly created ruby class

getCallbackback to summary
public final Pointer getCallback(ThreadContext context, CallbackInfo cbInfo, Object proc)

Implements abstract org.jruby.ext.ffi.CallbackManager.getCallback.

getCallbackFactoryback to summary
public final synchronized NativeCallbackFactory getCallbackFactory(Ruby runtime, CallbackInfo cbInfo)
getInstanceback to summary
public static final CallbackManager getInstance()

Gets the singleton instance of CallbackManager

newClosureback to summary
pack-priv final CallbackMemoryIO newClosure(Ruby runtime, Type returnType, Type[] parameterTypes, Object proc, CallingConvention convention)
org.jruby.ext.ffi.jffi back to summary

private final Class CallbackManager.SingletonHolder

extends Object
Class Inheritance

Holder for the single instance of CallbackManager

Field Summary

Modifier and TypeField and Description
pack-priv static final CallbackManager

Constructor Summary

AccessConstructor and Description
private

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

INSTANCEback to summary
pack-priv static final CallbackManager INSTANCE

Constructor Detail

SingletonHolderback to summary
private SingletonHolder()