class FastClassEmitter extends ClassEmitter
Modifier and Type | Class and Description |
---|---|
private static class |
FastClassEmitter.GetIndexCallback |
Modifier and Type | Field and Description |
---|---|
private static Signature |
CONSTRUCTOR_GET_INDEX |
private static Signature |
CSTRUCT_CLASS |
private static org.objectweb.asm.Type |
FAST_CLASS |
private static Signature |
GET_MAX_INDEX |
private static Signature |
GET_SIGNATURE_WITHOUT_RETURN_TYPE |
private static org.objectweb.asm.Type |
ILLEGAL_ARGUMENT_EXCEPTION |
private static org.objectweb.asm.Type |
INVOCATION_TARGET_EXCEPTION |
private static org.objectweb.asm.Type[] |
INVOCATION_TARGET_EXCEPTION_ARRAY |
private static Signature |
INVOKE |
private static Signature |
METHOD_GET_INDEX |
private static Signature |
NEW_INSTANCE |
private static Signature |
SIGNATURE_GET_INDEX |
private static Signature |
TO_STRING |
private static int |
TOO_MANY_METHODS |
Constructor and Description |
---|
FastClassEmitter(org.objectweb.asm.ClassVisitor v,
java.lang.String className,
java.lang.Class type) |
Modifier and Type | Method and Description |
---|---|
private void |
emitIndexByClassArray(java.util.List methods) |
private void |
emitIndexBySignature(java.util.List methods) |
private static int[] |
getIntRange(int length) |
private static void |
invokeSwitchHelper(CodeEmitter e,
java.util.List members,
int arg,
org.objectweb.asm.Type base) |
private void |
signatureSwitchHelper(CodeEmitter e,
java.util.List signatures) |
begin_class, begin_method, begin_static, declare_field, end_class, getAccess, getClassInfo, getClassType, getStaticHook, getSuperType, init, setTarget, visit, visitEnd, visitField, visitMethod
private static final Signature CSTRUCT_CLASS
private static final Signature METHOD_GET_INDEX
private static final Signature SIGNATURE_GET_INDEX
private static final Signature TO_STRING
private static final Signature CONSTRUCTOR_GET_INDEX
private static final Signature INVOKE
private static final Signature NEW_INSTANCE
private static final Signature GET_MAX_INDEX
private static final Signature GET_SIGNATURE_WITHOUT_RETURN_TYPE
private static final org.objectweb.asm.Type FAST_CLASS
private static final org.objectweb.asm.Type ILLEGAL_ARGUMENT_EXCEPTION
private static final org.objectweb.asm.Type INVOCATION_TARGET_EXCEPTION
private static final org.objectweb.asm.Type[] INVOCATION_TARGET_EXCEPTION_ARRAY
private static final int TOO_MANY_METHODS
public FastClassEmitter(org.objectweb.asm.ClassVisitor v, java.lang.String className, java.lang.Class type)
private void emitIndexBySignature(java.util.List methods)
private void emitIndexByClassArray(java.util.List methods)
private void signatureSwitchHelper(CodeEmitter e, java.util.List signatures)
private static void invokeSwitchHelper(CodeEmitter e, java.util.List members, int arg, org.objectweb.asm.Type base)
private static int[] getIntRange(int length)