Top Constructors Methods
jnr.ffi.provider.jffi

pack-priv final Class AsmUtil

extends Object
Class Inheritance
Imports
com.kenai.jffi.Platform, jnr.ffi.Address, .Pointer, jnr.ffi.mapper.FromNativeContext, .FromNativeConverter, .ToNativeContext, .ToNativeConverter, jnr.ffi.provider.FromNativeType, .ParameterFlags, .ParameterType, .SigType, .ToNativeType, org.objectweb.asm.ClassVisitor, .Label, .MethodVisitor, java.io.OutputStream, .PrintWriter, java.lang.annotation.Annotation, java.lang.reflect.Constructor, .Method, .Modifier, java.util.Collection

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static Class<T>
boxedType(Class<T> type)

pack-priv static void
boxValue(AsmBuilder builder, SkinnyMethodAdapter mv, Class<T> boxedType, Class<T> unboxedType)

pack-priv static int

Returns:

The size in parameter units
calculateLocalVariableSpace
(Class<T>
The type of parameter
type
)

Calculates the size of a local variable

pack-priv static int

Returns:

The size in parameter units
calculateLocalVariableSpace
(SigType
The type of parameter
type
)

Calculates the size of a local variable

pack-priv static int

Returns:

The size in parameter units
calculateLocalVariableSpace
(Class<T>...
The type of parameter
types
)

Calculates the size of a list of types in the local variable area.

pack-priv static int

Returns:

The size in parameter units
calculateLocalVariableSpace
(SigType...
The type of parameter
types
)

Calculates the size of a list of types in the local variable area.

private static boolean
classIsVisible(ClassLoader classLoader, Class<T> klass)

pack-priv static void
emitFromNativeConversion(AsmBuilder builder, SkinnyMethodAdapter mv, FromNativeType fromNativeType, Class<T> nativeClass)

pack-priv static void
emitReturn(AsmBuilder builder, SkinnyMethodAdapter mv, Class<T> returnType, Class<T> nativeIntType)

pack-priv static void
pack-priv static void
pack-priv static void
pack-priv static Method
getFromNativeMethod(FromNativeType fromNativeType, AsmClassLoader classLoader)

pack-priv static int
pack-priv static int
pack-priv static LocalVariable[]
pack-priv static LocalVariable[]
getParameterVariables(Class<T>[] parameterTypes)

pack-priv static Method
getToNativeMethod(ToNativeType toNativeType, AsmClassLoader classLoader)

pack-priv static void
load(SkinnyMethodAdapter mv, Class<T> parameterType, LocalVariable parameter)

pack-priv static boolean
public static ClassVisitor
public static ClassVisitor
public static ClassVisitor
public static ClassVisitor
public static MethodVisitor
pack-priv static void
pack-priv static void
tryfinally(SkinnyMethodAdapter mv, Runnable codeBlock, Runnable finallyBlock)

pack-priv static void
unboxBoolean(final SkinnyMethodAdapter mv, Class<T> boxedType, final Class<T> nativeType)

pack-priv static void
unboxBoolean(final SkinnyMethodAdapter mv, final Class<T> nativeType)

public static Class<T>
public static Class<T>
unboxedType(Class<T> boxedType)

pack-priv static void
unboxNumber(final SkinnyMethodAdapter mv, final Class<T> boxedType, final Class<T> unboxedType, final NativeType nativeType)

pack-priv static void
unboxNumber(final SkinnyMethodAdapter mv, final Class<T> boxedType, final Class<T> nativeType)

pack-priv static void
unboxPointer(final SkinnyMethodAdapter mv, final Class<T> nativeType)

private static void
unboxPointerOrStruct(final SkinnyMethodAdapter mv, final Class<T> type, final Class<T> nativeType)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

AsmUtilback to summary
private AsmUtil()

Method Detail

boxedTypeback to summary
public static Class<T> boxedType(Class<T> type)
boxValueback to summary
pack-priv static void boxValue(AsmBuilder builder, SkinnyMethodAdapter mv, Class<T> boxedType, Class<T> unboxedType)
calculateLocalVariableSpaceback to summary
pack-priv static int calculateLocalVariableSpace(Class<T> type)

Calculates the size of a local variable

Parameters
type:Class<T>

The type of parameter

Returns:int

The size in parameter units

calculateLocalVariableSpaceback to summary
pack-priv static int calculateLocalVariableSpace(SigType type)

Calculates the size of a local variable

Parameters
type:SigType

The type of parameter

Returns:int

The size in parameter units

calculateLocalVariableSpaceback to summary
pack-priv static int calculateLocalVariableSpace(Class<T>... types)

Calculates the size of a list of types in the local variable area.

Parameters
types:Class<T>[]

The type of parameter

Returns:int

The size in parameter units

calculateLocalVariableSpaceback to summary
pack-priv static int calculateLocalVariableSpace(SigType... types)

Calculates the size of a list of types in the local variable area.

Parameters
types:SigType[]

The type of parameter

Returns:int

The size in parameter units

classIsVisibleback to summary
private static boolean classIsVisible(ClassLoader classLoader, Class<T> klass)
emitFromNativeConversionback to summary
pack-priv static void emitFromNativeConversion(AsmBuilder builder, SkinnyMethodAdapter mv, FromNativeType fromNativeType, Class<T> nativeClass)
emitReturnback to summary
pack-priv static void emitReturn(AsmBuilder builder, SkinnyMethodAdapter mv, Class<T> returnType, Class<T> nativeIntType)
emitReturnOpback to summary
pack-priv static void emitReturnOp(SkinnyMethodAdapter mv, Class<T> returnType)
emitToNativeConversionback to summary
pack-priv static void emitToNativeConversion(AsmBuilder builder, SkinnyMethodAdapter mv, ToNativeType toNativeType)
getfieldback to summary
pack-priv static void getfield(SkinnyMethodAdapter mv, AsmBuilder builder, AsmBuilder.ObjectField field)
getFromNativeMethodback to summary
pack-priv static Method getFromNativeMethod(FromNativeType fromNativeType, AsmClassLoader classLoader)
getNativeArrayFlagsback to summary
pack-priv static int getNativeArrayFlags(int flags)
getNativeArrayFlagsback to summary
pack-priv static int getNativeArrayFlags(Collection<Annotation> annotations)
getParameterVariablesback to summary
pack-priv static LocalVariable[] getParameterVariables(ParameterType[] parameterTypes)
getParameterVariablesback to summary
pack-priv static LocalVariable[] getParameterVariables(Class<T>[] parameterTypes)
getToNativeMethodback to summary
pack-priv static Method getToNativeMethod(ToNativeType toNativeType, AsmClassLoader classLoader)
loadback to summary
pack-priv static void load(SkinnyMethodAdapter mv, Class<T> parameterType, LocalVariable parameter)
methodIsAccessibleback to summary
pack-priv static boolean methodIsAccessible(Method method)
newCheckClassAdapterback to summary
public static ClassVisitor newCheckClassAdapter(ClassVisitor cv)
newTraceClassVisitorback to summary
public static ClassVisitor newTraceClassVisitor(ClassVisitor cv, OutputStream out)
newTraceClassVisitorback to summary
public static ClassVisitor newTraceClassVisitor(ClassVisitor cv, PrintWriter out)
newTraceClassVisitorback to summary
public static ClassVisitor newTraceClassVisitor(PrintWriter out)
newTraceMethodVisitorback to summary
public static MethodVisitor newTraceMethodVisitor(MethodVisitor mv)
storeback to summary
pack-priv static void store(SkinnyMethodAdapter mv, Class<T> type, LocalVariable var)
tryfinallyback to summary
pack-priv static void tryfinally(SkinnyMethodAdapter mv, Runnable codeBlock, Runnable finallyBlock)
unboxBooleanback to summary
pack-priv static void unboxBoolean(final SkinnyMethodAdapter mv, Class<T> boxedType, final Class<T> nativeType)
unboxBooleanback to summary
pack-priv static void unboxBoolean(final SkinnyMethodAdapter mv, final Class<T> nativeType)
unboxedReturnTypeback to summary
public static Class<T> unboxedReturnType(Class<T> type)
unboxedTypeback to summary
public static Class<T> unboxedType(Class<T> boxedType)
unboxNumberback to summary
pack-priv static void unboxNumber(final SkinnyMethodAdapter mv, final Class<T> boxedType, final Class<T> unboxedType, final NativeType nativeType)
unboxNumberback to summary
pack-priv static void unboxNumber(final SkinnyMethodAdapter mv, final Class<T> boxedType, final Class<T> nativeType)
unboxPointerback to summary
pack-priv static void unboxPointer(final SkinnyMethodAdapter mv, final Class<T> nativeType)
unboxPointerOrStructback to summary
private static void unboxPointerOrStruct(final SkinnyMethodAdapter mv, final Class<T> type, final Class<T> nativeType)