Package jnr.ffi.provider.jffi
Class X86MethodGenerator
- java.lang.Object
-
- jnr.ffi.provider.jffi.X86MethodGenerator
-
- All Implemented Interfaces:
MethodGenerator
class X86MethodGenerator extends java.lang.Object implements MethodGenerator
-
-
Field Summary
Fields Modifier and Type Field Description private StubCompilercompilerprivate static booleanENABLEDprivate java.util.concurrent.atomic.AtomicLongnextMethodID
-
Constructor Summary
Constructors Constructor Description X86MethodGenerator(StubCompiler compiler)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidattach(java.lang.Class clazz)voidgenerate(AsmBuilder builder, java.lang.String functionName, com.kenai.jffi.Function function, ResultType resultType, ParameterType[] parameterTypes, boolean ignoreError)private static voidgenerateWrapper(AsmBuilder builder, java.lang.String functionName, com.kenai.jffi.Function function, ResultType resultType, ParameterType[] parameterTypes, java.lang.String nativeMethodName, java.lang.Class nativeReturnType, java.lang.Class[] nativeParameterTypes)(package private) static java.lang.ClassgetNativeClass(NativeType nativeType)booleanisSupported(ResultType resultType, ParameterType[] parameterTypes, CallingConvention callingConvention)private static booleanisSupportedObjectParameterType(ParameterType type)(package private) static booleanisSupportedParameter(ParameterType parameterType)(package private) static booleanisSupportedResult(ResultType resultType)private static booleanisSupportedType(SigType type)
-
-
-
Field Detail
-
ENABLED
private static final boolean ENABLED
-
nextMethodID
private final java.util.concurrent.atomic.AtomicLong nextMethodID
-
compiler
private final StubCompiler compiler
-
-
Constructor Detail
-
X86MethodGenerator
X86MethodGenerator(StubCompiler compiler)
-
-
Method Detail
-
isSupported
public boolean isSupported(ResultType resultType, ParameterType[] parameterTypes, CallingConvention callingConvention)
- Specified by:
isSupportedin interfaceMethodGenerator
-
generate
public void generate(AsmBuilder builder, java.lang.String functionName, com.kenai.jffi.Function function, ResultType resultType, ParameterType[] parameterTypes, boolean ignoreError)
- Specified by:
generatein interfaceMethodGenerator
-
generateWrapper
private static void generateWrapper(AsmBuilder builder, java.lang.String functionName, com.kenai.jffi.Function function, ResultType resultType, ParameterType[] parameterTypes, java.lang.String nativeMethodName, java.lang.Class nativeReturnType, java.lang.Class[] nativeParameterTypes)
-
attach
void attach(java.lang.Class clazz)
-
isSupportedObjectParameterType
private static boolean isSupportedObjectParameterType(ParameterType type)
-
isSupportedType
private static boolean isSupportedType(SigType type)
-
isSupportedResult
static boolean isSupportedResult(ResultType resultType)
-
isSupportedParameter
static boolean isSupportedParameter(ParameterType parameterType)
-
getNativeClass
static java.lang.Class getNativeClass(NativeType nativeType)
-
-