public class FieldProviderTransformer extends ClassEmitterTransformer
Modifier and Type | Field and Description |
---|---|
private int |
access |
private static java.lang.String |
FIELD_NAMES |
private static org.objectweb.asm.Type |
FIELD_PROVIDER |
private static java.lang.String |
FIELD_TYPES |
private java.util.Map |
fields |
private static org.objectweb.asm.Type |
ILLEGAL_ARGUMENT_EXCEPTION |
private static Signature |
PROVIDER_GET |
private static Signature |
PROVIDER_GET_BY_INDEX |
private static Signature |
PROVIDER_GET_NAMES |
private static Signature |
PROVIDER_GET_TYPES |
private static Signature |
PROVIDER_SET |
private static Signature |
PROVIDER_SET_BY_INDEX |
Constructor and Description |
---|
FieldProviderTransformer() |
Modifier and Type | Method and Description |
---|---|
void |
begin_class(int version,
int access,
java.lang.String className,
org.objectweb.asm.Type superType,
org.objectweb.asm.Type[] interfaces,
java.lang.String sourceFile) |
void |
declare_field(int access,
java.lang.String name,
org.objectweb.asm.Type type,
java.lang.Object value) |
void |
end_class() |
private void |
generate() |
private void |
getByIndex(java.lang.String[] names,
int[] indexes) |
private void |
getField(java.lang.String[] names) |
private void |
getNames() |
private void |
getTypes() |
private void |
initFieldProvider(java.lang.String[] names) |
private void |
setByIndex(java.lang.String[] names,
int[] indexes) |
private void |
setField(java.lang.String[] names) |
begin_method, begin_static, getAccess, getClassInfo, getClassType, getStaticHook, getSuperType, init, setTarget, visit, visitEnd, visitField, visitMethod
private static final java.lang.String FIELD_NAMES
private static final java.lang.String FIELD_TYPES
private static final org.objectweb.asm.Type FIELD_PROVIDER
private static final org.objectweb.asm.Type ILLEGAL_ARGUMENT_EXCEPTION
private static final Signature PROVIDER_GET
private static final Signature PROVIDER_SET
private static final Signature PROVIDER_SET_BY_INDEX
private static final Signature PROVIDER_GET_BY_INDEX
private static final Signature PROVIDER_GET_TYPES
private static final Signature PROVIDER_GET_NAMES
private int access
private java.util.Map fields
public void begin_class(int version, int access, java.lang.String className, org.objectweb.asm.Type superType, org.objectweb.asm.Type[] interfaces, java.lang.String sourceFile)
begin_class
in class ClassEmitter
public void declare_field(int access, java.lang.String name, org.objectweb.asm.Type type, java.lang.Object value)
declare_field
in class ClassEmitter
public void end_class()
end_class
in class ClassEmitter
private void generate() throws java.lang.Exception
java.lang.Exception
private void initFieldProvider(java.lang.String[] names)
private void getNames()
private void getTypes()
private void setByIndex(java.lang.String[] names, int[] indexes) throws java.lang.Exception
java.lang.Exception
private void getByIndex(java.lang.String[] names, int[] indexes) throws java.lang.Exception
java.lang.Exception
private void getField(java.lang.String[] names) throws java.lang.Exception
java.lang.Exception
private void setField(java.lang.String[] names) throws java.lang.Exception
java.lang.Exception