Top Inners Fields Constructors Methods
jnr.ffi.provider.jffi

public abstract Class ClosureFromNativeConverter

extends Object
implements FromNativeConverter<Object, Pointer>
Class Inheritance
All Implemented Interfaces
jnr.ffi.mapper.FromNativeConverter
Known Direct Subclasses
jnr.ffi.provider.jffi.ClosureFromNativeConverter.ProxyConverter
Imports
com.kenai.jffi.CallContext, org.objectweb.asm.ClassReader, .ClassVisitor, .ClassWriter, java.io.PrintWriter, java.lang.reflect.Constructor, .Method, java.util.concurrent.atomic.AtomicLong, jnr.ffi.CallingConvention, .Pointer, jnr.ffi.annotations.StdCall, jnr.ffi.mapper.DefaultSignatureType, .FromNativeContext, .FromNativeConverter, .MethodResultContext, .SignatureType, .SignatureTypeMapper, jnr.ffi.provider.InAccessibleMemoryIO, .ParameterType, .ResultType

Nested and Inner Type Summary

Modifier and TypeClass and Description
public abstract static class
public static class

Field Summary

Modifier and TypeField and Description
private static final AtomicLong

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private static void
generateInvocation(Runtime runtime, AsmBuilder builder, Class<T> closureClass, SignatureTypeMapper typeMapper)

public static FromNativeConverter<?, Pointer>
getInstance(Runtime runtime, SignatureType type, AsmClassLoader classLoader, SignatureTypeMapper typeMapper)

private static Class<T>
loadClass(AsmClassLoader classLoader, String className, ClassWriter cw)

public Class<Pointer>
private static FromNativeConverter<J, N>
newClosureConverter(Runtime runtime, AsmClassLoader classLoader, Class<T> closureClass, SignatureTypeMapper typeMapper)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

nextClassIDback to summary
private static final AtomicLong nextClassID

Constructor Detail

ClosureFromNativeConverterback to summary
public ClosureFromNativeConverter()

Method Detail

generateInvocationback to summary
private static void generateInvocation(Runtime runtime, AsmBuilder builder, Class<T> closureClass, SignatureTypeMapper typeMapper)
getInstanceback to summary
public static FromNativeConverter<?, Pointer> getInstance(Runtime runtime, SignatureType type, AsmClassLoader classLoader, SignatureTypeMapper typeMapper)
loadClassback to summary
private static Class<T> loadClass(AsmClassLoader classLoader, String className, ClassWriter cw)
nativeTypeback to summary
public Class<Pointer> nativeType()

Implements jnr.ffi.mapper.FromNativeConverter.nativeType.

Annotations
@Override
newClosureConverterback to summary
private static FromNativeConverter<J, N> newClosureConverter(Runtime runtime, AsmClassLoader classLoader, Class<T> closureClass, SignatureTypeMapper typeMapper)
jnr.ffi.provider.jffi back to summary

public abstract Class ClosureFromNativeConverter.AbstractClosurePointer

extends InAccessibleMemoryIO
Class Inheritance

Field Summary

Modifier and TypeField and Description
public static final Invoker
protected final long

Constructor Summary

AccessConstructor and Description
protected
AbstractClosurePointer(Runtime runtime, long functionAddress)

Method Summary

Modifier and TypeMethod and Description
public final long
size()

Implements abstract jnr.ffi.Pointer.size.

Gets the size of this memory object in bytes (optional operation).
Inherited from jnr.ffi.provider.InAccessibleMemoryIO:
arrayarrayLengtharrayOffseterrorgetgetgetgetgetgetgetBytegetDoublegetFloatgetIntgetLonggetLongLonggetPointergetPointergetShortgetStringgetStringhasArrayindexOfputputputputputputputByteputDoubleputFloatputIntputLongputLongLongputPointerputShortputStringsetMemory

Field Detail

ffiback to summary
public static final Invoker ffi
functionAddressback to summary
protected final long functionAddress

Constructor Detail

AbstractClosurePointerback to summary
protected AbstractClosurePointer(Runtime runtime, long functionAddress)

Method Detail

sizeback to summary
public final long size()

Implements abstract jnr.ffi.Pointer.size.

Doc from jnr.ffi.Pointer.size.

Gets the size of this memory object in bytes (optional operation).

Returns:long

the size of the memory area this Pointer points to. If the size is unknown, java.lang.Long#MAX_VALUE is returned}.

Annotations
@Override
jnr.ffi.provider.jffi back to summary

public final Class ClosureFromNativeConverter.ProxyConverter

extends ClosureFromNativeConverter
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final Constructor<T>
private final Object[]
private final Runtime

Constructor Summary

AccessConstructor and Description
public
ProxyConverter(Runtime runtime, Constructor<T> closureConstructor, Object[] initFields)

Method Summary

Modifier and TypeMethod and Description
public Object
Inherited from jnr.ffi.provider.jffi.ClosureFromNativeConverter:
getInstancenativeType

Field Detail

closureConstructorback to summary
private final Constructor<T> closureConstructor
initFieldsback to summary
private final Object[] initFields
runtimeback to summary
private final Runtime runtime

Constructor Detail

ProxyConverterback to summary
public ProxyConverter(Runtime runtime, Constructor<T> closureConstructor, Object[] initFields)

Method Detail

fromNativeback to summary
public Object fromNative(Pointer nativeValue, FromNativeContext context)

Implements jnr.ffi.mapper.FromNativeConverter.fromNative.

Annotations
@Override