Package jnr.ffi.provider.jffi
Class AsmLibraryLoader
- java.lang.Object
-
- jnr.ffi.provider.jffi.LibraryLoader
-
- jnr.ffi.provider.jffi.AsmLibraryLoader
-
public class AsmLibraryLoader extends LibraryLoader
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.ThreadLocal<AsmClassLoader>
classLoader
static boolean
DEBUG
private static java.util.concurrent.atomic.AtomicLong
nextClassID
private NativeRuntime
runtime
private static java.util.concurrent.atomic.AtomicLong
uniqueId
-
Constructor Summary
Constructors Constructor Description AsmLibraryLoader()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
generateFunctionNotFound(org.objectweb.asm.ClassVisitor cv, java.lang.String className, java.lang.String errorFieldName, java.lang.String functionName, java.lang.Class returnType, java.lang.Class[] parameterTypes)
private <T> T
generateInterfaceImpl(NativeLibrary library, java.lang.Class<T> interfaceClass, java.util.Map<LibraryOption,?> libraryOptions, AsmClassLoader classLoader)
private void
generateVarargsInvocation(AsmBuilder builder, java.lang.reflect.Method m, AsmBuilder.ObjectField field)
(package private) <T> T
loadLibrary(NativeLibrary library, java.lang.Class<T> interfaceClass, java.util.Map<LibraryOption,?> libraryOptions)
-
-
-
Field Detail
-
DEBUG
public static final boolean DEBUG
-
nextClassID
private static final java.util.concurrent.atomic.AtomicLong nextClassID
-
uniqueId
private static final java.util.concurrent.atomic.AtomicLong uniqueId
-
classLoader
private static final java.lang.ThreadLocal<AsmClassLoader> classLoader
-
runtime
private final NativeRuntime runtime
-
-
Method Detail
-
loadLibrary
<T> T loadLibrary(NativeLibrary library, java.lang.Class<T> interfaceClass, java.util.Map<LibraryOption,?> libraryOptions)
- Specified by:
loadLibrary
in classLibraryLoader
-
generateInterfaceImpl
private <T> T generateInterfaceImpl(NativeLibrary library, java.lang.Class<T> interfaceClass, java.util.Map<LibraryOption,?> libraryOptions, AsmClassLoader classLoader)
-
generateFunctionNotFound
private void generateFunctionNotFound(org.objectweb.asm.ClassVisitor cv, java.lang.String className, java.lang.String errorFieldName, java.lang.String functionName, java.lang.Class returnType, java.lang.Class[] parameterTypes)
-
generateVarargsInvocation
private void generateVarargsInvocation(AsmBuilder builder, java.lang.reflect.Method m, AsmBuilder.ObjectField field)
-
-