Package jnr.ffi.provider.jffi
Class AsmBuilder
- java.lang.Object
-
- jnr.ffi.provider.jffi.AsmBuilder
-
class AsmBuilder extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AsmBuilder.ObjectField
private static class
AsmBuilder.ObjectNameGenerator
-
Field Summary
-
Constructor Summary
Constructors Constructor Description AsmBuilder(Runtime runtime, java.lang.String classNamePath, org.objectweb.asm.ClassVisitor classVisitor, AsmClassLoader classLoader)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) <T> AsmBuilder.ObjectField
addField(java.util.Map<T,AsmBuilder.ObjectField> map, T value, java.lang.Class klass, AsmBuilder.ObjectNameGenerator objectNameGenerator)
(package private) void
emitFieldInitialization(SkinnyMethodAdapter init, int objectsParameterIndex)
(package private) java.lang.String
getCallContextFieldName(com.kenai.jffi.CallContext callContext)
(package private) java.lang.String
getCallContextFieldName(com.kenai.jffi.Function function)
AsmClassLoader
getClassLoader()
java.lang.String
getClassNamePath()
(package private) org.objectweb.asm.ClassVisitor
getClassVisitor()
(package private) <T> AsmBuilder.ObjectField
getField(java.util.Map<T,AsmBuilder.ObjectField> map, T value, java.lang.Class klass, AsmBuilder.ObjectNameGenerator objectNameGenerator)
(package private) AsmBuilder.ObjectField
getFromNativeContextField(FromNativeContext context)
(package private) AsmBuilder.ObjectField
getFromNativeConverterField(FromNativeConverter converter)
(package private) java.lang.String
getFromNativeConverterName(FromNativeConverter converter)
(package private) java.lang.String
getFunctionAddressFieldName(com.kenai.jffi.Function function)
(package private) AsmBuilder.ObjectField
getObjectField(java.lang.Object obj, java.lang.Class klass)
(package private) AsmBuilder.ObjectField[]
getObjectFieldArray()
(package private) java.lang.String
getObjectFieldName(java.lang.Object obj, java.lang.Class klass)
(package private) java.lang.Object[]
getObjectFieldValues()
(package private) java.lang.String
getObjectParameterInfoName(com.kenai.jffi.ObjectParameterInfo info)
Runtime
getRuntime()
(package private) AsmBuilder.ObjectField
getRuntimeField()
(package private) AsmBuilder.ObjectField
getToNativeContextField(ToNativeContext context)
(package private) AsmBuilder.ObjectField
getToNativeConverterField(ToNativeConverter converter)
(package private) java.lang.String
getToNativeConverterName(ToNativeConverter converter)
(package private) java.lang.String
getVariableName(Variable variableAccessor)
private static java.lang.Class
nearestClass(java.lang.Object obj, java.lang.Class defaultClass)
-
-
-
Field Detail
-
runtime
private final Runtime runtime
-
classNamePath
private final java.lang.String classNamePath
-
classVisitor
private final org.objectweb.asm.ClassVisitor classVisitor
-
classLoader
private final AsmClassLoader classLoader
-
functionId
private final AsmBuilder.ObjectNameGenerator functionId
-
contextId
private final AsmBuilder.ObjectNameGenerator contextId
-
toNativeConverterId
private final AsmBuilder.ObjectNameGenerator toNativeConverterId
-
toNativeContextId
private final AsmBuilder.ObjectNameGenerator toNativeContextId
-
fromNativeConverterId
private final AsmBuilder.ObjectNameGenerator fromNativeConverterId
-
fromNativeContextId
private final AsmBuilder.ObjectNameGenerator fromNativeContextId
-
objectParameterInfoId
private final AsmBuilder.ObjectNameGenerator objectParameterInfoId
-
variableAccessorId
private final AsmBuilder.ObjectNameGenerator variableAccessorId
-
genericObjectId
private final AsmBuilder.ObjectNameGenerator genericObjectId
-
toNativeConverters
private final java.util.Map<ToNativeConverter,AsmBuilder.ObjectField> toNativeConverters
-
toNativeContexts
private final java.util.Map<ToNativeContext,AsmBuilder.ObjectField> toNativeContexts
-
fromNativeConverters
private final java.util.Map<FromNativeConverter,AsmBuilder.ObjectField> fromNativeConverters
-
fromNativeContexts
private final java.util.Map<FromNativeContext,AsmBuilder.ObjectField> fromNativeContexts
-
objectParameterInfo
private final java.util.Map<com.kenai.jffi.ObjectParameterInfo,AsmBuilder.ObjectField> objectParameterInfo
-
variableAccessors
private final java.util.Map<Variable,AsmBuilder.ObjectField> variableAccessors
-
callContextMap
private final java.util.Map<com.kenai.jffi.CallContext,AsmBuilder.ObjectField> callContextMap
-
functionAddresses
private final java.util.Map<java.lang.Long,AsmBuilder.ObjectField> functionAddresses
-
genericObjects
private final java.util.Map<java.lang.Object,AsmBuilder.ObjectField> genericObjects
-
objectFields
private final java.util.List<AsmBuilder.ObjectField> objectFields
-
-
Constructor Detail
-
AsmBuilder
AsmBuilder(Runtime runtime, java.lang.String classNamePath, org.objectweb.asm.ClassVisitor classVisitor, AsmClassLoader classLoader)
-
-
Method Detail
-
getClassNamePath
public java.lang.String getClassNamePath()
-
getClassVisitor
org.objectweb.asm.ClassVisitor getClassVisitor()
-
getClassLoader
public AsmClassLoader getClassLoader()
-
getRuntime
public Runtime getRuntime()
-
addField
<T> AsmBuilder.ObjectField addField(java.util.Map<T,AsmBuilder.ObjectField> map, T value, java.lang.Class klass, AsmBuilder.ObjectNameGenerator objectNameGenerator)
-
getField
<T> AsmBuilder.ObjectField getField(java.util.Map<T,AsmBuilder.ObjectField> map, T value, java.lang.Class klass, AsmBuilder.ObjectNameGenerator objectNameGenerator)
-
getCallContextFieldName
java.lang.String getCallContextFieldName(com.kenai.jffi.Function function)
-
getCallContextFieldName
java.lang.String getCallContextFieldName(com.kenai.jffi.CallContext callContext)
-
getFunctionAddressFieldName
java.lang.String getFunctionAddressFieldName(com.kenai.jffi.Function function)
-
getRuntimeField
AsmBuilder.ObjectField getRuntimeField()
-
getFromNativeConverterName
java.lang.String getFromNativeConverterName(FromNativeConverter converter)
-
getToNativeConverterName
java.lang.String getToNativeConverterName(ToNativeConverter converter)
-
nearestClass
private static java.lang.Class nearestClass(java.lang.Object obj, java.lang.Class defaultClass)
-
getToNativeConverterField
AsmBuilder.ObjectField getToNativeConverterField(ToNativeConverter converter)
-
getFromNativeConverterField
AsmBuilder.ObjectField getFromNativeConverterField(FromNativeConverter converter)
-
getToNativeContextField
AsmBuilder.ObjectField getToNativeContextField(ToNativeContext context)
-
getFromNativeContextField
AsmBuilder.ObjectField getFromNativeContextField(FromNativeContext context)
-
getObjectParameterInfoName
java.lang.String getObjectParameterInfoName(com.kenai.jffi.ObjectParameterInfo info)
-
getObjectFieldName
java.lang.String getObjectFieldName(java.lang.Object obj, java.lang.Class klass)
-
getObjectField
AsmBuilder.ObjectField getObjectField(java.lang.Object obj, java.lang.Class klass)
-
getVariableName
java.lang.String getVariableName(Variable variableAccessor)
-
getObjectFieldArray
AsmBuilder.ObjectField[] getObjectFieldArray()
-
getObjectFieldValues
java.lang.Object[] getObjectFieldValues()
-
emitFieldInitialization
void emitFieldInitialization(SkinnyMethodAdapter init, int objectsParameterIndex)
-
-