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

public final Class Function

extends AbstractInvoker
Class Inheritance
Annotations
@JRubyClass
name:FFI::Function
parent:FFI::Pointer
Imports
com.kenai.jffi.CallingConvention, org.jruby.Ruby, .RubyArray, .RubyClass, .RubyHash, .RubyModule, .RubyProc, org.jruby.anno.JRubyClass, .JRubyMethod, org.jruby.ext.ffi.*, org.jruby.internal.runtime.methods.DynamicMethod, org.jruby.runtime.Arity, .Block, .ThreadContext, org.jruby.runtime.builtin.IRubyObject

Field Summary

Modifier and TypeField and Description
private volatile boolean
private final IRubyObject
private final Function
private final NativeFunctionInfo
private final boolean
Inherited from org.jruby.ext.ffi.AbstractInvoker:
arity

Constructor Summary

AccessConstructor and Description
pack-priv
Function(Ruby runtime, RubyClass klass, MemoryIO address, Type returnType, Type[] parameterTypes, CallingConvention convention, IRubyObject enums, boolean saveError)

pack-priv
Function(Ruby runtime, RubyClass klass, MemoryIO address, NativeFunctionInfo functionInfo, IRubyObject enums)

Method Summary

Modifier and TypeMethod and Description
public final IRubyObject
public final IRubyObject
public DynamicMethod
createDynamicMethod(RubyModule
for which module
module
)

Implements abstract org.jruby.ext.ffi.AbstractInvoker.createDynamicMethod.

Create a method

public static RubyClass
public final IRubyObject
public static IRubyObject
newInstance(ThreadContext context, IRubyObject recv, IRubyObject[] args, Block block)

Inherited from org.jruby.ext.ffi.AbstractInvoker:
attachcreateAbstractInvokerClassgetArity

Field Detail

autoreleaseback to summary
private volatile boolean autorelease
enumsback to summary
private final IRubyObject enums
functionback to summary
private final Function function
functionInfoback to summary
private final NativeFunctionInfo functionInfo
saveErrorback to summary
private final boolean saveError

Constructor Detail

Functionback to summary
pack-priv Function(Ruby runtime, RubyClass klass, MemoryIO address, Type returnType, Type[] parameterTypes, CallingConvention convention, IRubyObject enums, boolean saveError)
Functionback to summary
pack-priv Function(Ruby runtime, RubyClass klass, MemoryIO address, NativeFunctionInfo functionInfo, IRubyObject enums)

Method Detail

autoreleaseback to summary
public final IRubyObject autorelease(ThreadContext context, IRubyObject release)
Annotations
@JRubyMethod
name:autorelease=
autorelease_pback to summary
public final IRubyObject autorelease_p(ThreadContext context)
Annotations
@JRubyMethod
name:autorelease?, autorelease
createDynamicMethodback to summary
public DynamicMethod createDynamicMethod(RubyModule module)

Implements abstract org.jruby.ext.ffi.AbstractInvoker.createDynamicMethod.

Doc from org.jruby.ext.ffi.AbstractInvoker.createDynamicMethod.

Create a method

Parameters
module:RubyModule

for which module

Returns:DynamicMethod

a method

Annotations
@Override
createFunctionClassback to summary
public static RubyClass createFunctionClass(ThreadContext context, RubyModule FFI)
freeback to summary
public final IRubyObject free(ThreadContext context)
Annotations
@JRubyMethod
name:free
newInstanceback to summary
public static IRubyObject newInstance(ThreadContext context, IRubyObject recv, IRubyObject[] args, Block block)
Annotations
@JRubyMethod
name:new
meta:true
required:2
optional:2
checkArity:false