// class version 52.0 (52)
// access flags 0x20
class top/huzhurong/demo/asm/LocalVariableTableVisitor extends org/objectweb/asm/MethodVisitor {
// access flags 0x609
public static abstract INNERCLASS java/util/Map$Entry java/util/Map Entry
// access flags 0x19
public final static INNERCLASS java/lang/invoke/MethodHandles$Lookup java/lang/invoke/MethodHandles Lookup
// access flags 0x1A
private final static Ljava/lang/String; CONSTRUCTOR = ""
// access flags 0x12
// signature Ljava/lang/Class;
// declaration: java.lang.Class>
private final Ljava/lang/Class; clazz
// access flags 0x12
// signature Ljava/util/Map;
// declaration: java.util.Map
private final Ljava/util/Map; memberMap
// access flags 0x12
private final Ljava/lang/String; name
// access flags 0x12
private final [Lorg/objectweb/asm/Type; args
// access flags 0x12
private final [Ljava/lang/String; parameterNames
// access flags 0x12
private final Z isStatic
// access flags 0x2
private Z hasLvtInfo
// access flags 0x12
private final [I lvtSlotIndex
// access flags 0x19
public final static Ljava/lang/String; ARRAY_SUFFIX = "[]"
// access flags 0x1A
private final static Ljava/lang/String; INTERNAL_ARRAY_PREFIX = "["
// access flags 0x1A
private final static Ljava/lang/String; NON_PRIMITIVE_ARRAY_PREFIX = "[L"
// access flags 0x1A
private final static C PACKAGE_SEPARATOR = 46
// access flags 0x1A
private final static C PATH_SEPARATOR = 47
// access flags 0x1A
private final static C INNER_CLASS_SEPARATOR = 36
// access flags 0x19
public final static Ljava/lang/String; CGLIB_CLASS_SEPARATOR = "$$"
// access flags 0x19
public final static Ljava/lang/String; CLASS_FILE_SUFFIX = ".class"
// access flags 0x1A
// signature Ljava/util/Map;>;
// declaration: java.util.Map>
private final static Ljava/util/Map; primitiveTypeNameMap
// access flags 0x1A
// signature Ljava/util/Map;Ljava/lang/Class;>;
// declaration: java.util.Map, java.lang.Class>>
private final static Ljava/util/Map; primitiveWrapperTypeMap
// access flags 0x1A
// signature Ljava/util/Map;Ljava/lang/Class;>;
// declaration: java.util.Map, java.lang.Class>>
private final static Ljava/util/Map; primitiveTypeToWrapperMap
// access flags 0x1A
// signature Ljava/util/Map;>;
// declaration: java.util.Map>
private final static Ljava/util/Map; commonClassCache
// access flags 0x1
// signature (Ljava/lang/Class;Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;Z)V
// declaration: void (java.lang.Class>, java.util.Map, java.lang.String, java.lang.String, boolean)
public (Ljava/lang/Class;Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;Z)V
L0
LINENUMBER 45 L0
ALOAD 0
LDC 327680
INVOKESPECIAL org/objectweb/asm/MethodVisitor. (I)V
L1
LINENUMBER 36 L1
ALOAD 0
ICONST_0
PUTFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.hasLvtInfo : Z
L2
LINENUMBER 46 L2
ALOAD 0
ALOAD 1
PUTFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.clazz : Ljava/lang/Class;
L3
LINENUMBER 47 L3
ALOAD 0
ALOAD 2
PUTFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.memberMap : Ljava/util/Map;
L4
LINENUMBER 48 L4
ALOAD 0
ALOAD 3
PUTFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.name : Ljava/lang/String;
L5
LINENUMBER 49 L5
ALOAD 0
ALOAD 4
INVOKESTATIC org/objectweb/asm/Type.getArgumentTypes (Ljava/lang/String;)[Lorg/objectweb/asm/Type;
PUTFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.args : [Lorg/objectweb/asm/Type;
L6
LINENUMBER 50 L6
ALOAD 0
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.args : [Lorg/objectweb/asm/Type;
ARRAYLENGTH
ANEWARRAY java/lang/String
PUTFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.parameterNames : [Ljava/lang/String;
L7
LINENUMBER 51 L7
ALOAD 0
ILOAD 5
PUTFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.isStatic : Z
L8
LINENUMBER 52 L8
ALOAD 0
ILOAD 5
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.args : [Lorg/objectweb/asm/Type;
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.computeLvtSlotIndices (Z[Lorg/objectweb/asm/Type;)[I
PUTFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.lvtSlotIndex : [I
L9
LINENUMBER 53 L9
RETURN
L10
LOCALVARIABLE this Ltop/huzhurong/demo/asm/LocalVariableTableVisitor; L0 L10 0
LOCALVARIABLE clazz Ljava/lang/Class; L0 L10 1
// signature Ljava/lang/Class;
// declaration: java.lang.Class>
LOCALVARIABLE map Ljava/util/Map; L0 L10 2
// signature Ljava/util/Map;
// declaration: java.util.Map
LOCALVARIABLE name Ljava/lang/String; L0 L10 3
LOCALVARIABLE desc Ljava/lang/String; L0 L10 4
LOCALVARIABLE isStatic Z L0 L10 5
MAXSTACK = 3
MAXLOCALS = 6
// access flags 0x1
public visitLocalVariable(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;I)V
L0
LINENUMBER 57 L0
ALOAD 0
ICONST_1
PUTFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.hasLvtInfo : Z
L1
LINENUMBER 58 L1
ICONST_0
ISTORE 7
L2
FRAME APPEND [I]
ILOAD 7
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.lvtSlotIndex : [I
ARRAYLENGTH
IF_ICMPGE L3
L4
LINENUMBER 59 L4
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.lvtSlotIndex : [I
ILOAD 7
IALOAD
ILOAD 6
IF_ICMPNE L5
L6
LINENUMBER 60 L6
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.parameterNames : [Ljava/lang/String;
ILOAD 7
ALOAD 1
AASTORE
L5
LINENUMBER 58 L5
FRAME SAME
IINC 7 1
GOTO L2
L3
LINENUMBER 63 L3
FRAME CHOP 1
RETURN
L7
LOCALVARIABLE i I L2 L3 7
LOCALVARIABLE this Ltop/huzhurong/demo/asm/LocalVariableTableVisitor; L0 L7 0
LOCALVARIABLE name Ljava/lang/String; L0 L7 1
LOCALVARIABLE description Ljava/lang/String; L0 L7 2
LOCALVARIABLE signature Ljava/lang/String; L0 L7 3
LOCALVARIABLE start Lorg/objectweb/asm/Label; L0 L7 4
LOCALVARIABLE end Lorg/objectweb/asm/Label; L0 L7 5
LOCALVARIABLE index I L0 L7 6
MAXSTACK = 3
MAXLOCALS = 8
// access flags 0x1
public visitEnd()V
L0
LINENUMBER 67 L0
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.hasLvtInfo : Z
IFNE L1
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.isStatic : Z
IFEQ L2
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.parameterNames : [Ljava/lang/String;
ARRAYLENGTH
IFNE L2
L1
LINENUMBER 72 L1
FRAME SAME
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.memberMap : Ljava/util/Map;
ALOAD 0
INVOKESPECIAL top/huzhurong/demo/asm/LocalVariableTableVisitor.resolveMember ()Ljava/lang/reflect/Member;
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.parameterNames : [Ljava/lang/String;
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L2
LINENUMBER 74 L2
FRAME SAME
RETURN
L3
LOCALVARIABLE this Ltop/huzhurong/demo/asm/LocalVariableTableVisitor; L0 L3 0
MAXSTACK = 3
MAXLOCALS = 1
// access flags 0x2
private resolveMember()Ljava/lang/reflect/Member;
TRYCATCHBLOCK L0 L1 L2 java/lang/NoSuchMethodException
TRYCATCHBLOCK L3 L4 L2 java/lang/NoSuchMethodException
L5
LINENUMBER 77 L5
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.clazz : Ljava/lang/Class;
INVOKEVIRTUAL java/lang/Class.getClassLoader ()Ljava/lang/ClassLoader;
ASTORE 1
L6
LINENUMBER 78 L6
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.args : [Lorg/objectweb/asm/Type;
ARRAYLENGTH
ANEWARRAY java/lang/Class
ASTORE 2
L7
LINENUMBER 79 L7
ICONST_0
ISTORE 3
L8
FRAME APPEND [java/lang/ClassLoader [Ljava/lang/Class; I]
ILOAD 3
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.args : [Lorg/objectweb/asm/Type;
ARRAYLENGTH
IF_ICMPGE L0
L9
LINENUMBER 80 L9
ALOAD 2
ILOAD 3
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.args : [Lorg/objectweb/asm/Type;
ILOAD 3
AALOAD
INVOKEVIRTUAL org/objectweb/asm/Type.getClassName ()Ljava/lang/String;
ALOAD 1
INVOKESTATIC org/springframework/util/ClassUtils.resolveClassName (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
AASTORE
L10
LINENUMBER 79 L10
IINC 3 1
GOTO L8
L0
LINENUMBER 83 L0
FRAME CHOP 1
LDC ""
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.name : Ljava/lang/String;
INVOKEVIRTUAL java/lang/String.equals (Ljava/lang/Object;)Z
IFEQ L3
L11
LINENUMBER 84 L11
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.clazz : Ljava/lang/Class;
ALOAD 2
INVOKEVIRTUAL java/lang/Class.getDeclaredConstructor ([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
L1
ARETURN
L3
LINENUMBER 86 L3
FRAME SAME
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.clazz : Ljava/lang/Class;
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.name : Ljava/lang/String;
ALOAD 2
INVOKEVIRTUAL java/lang/Class.getDeclaredMethod (Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
L4
ARETURN
L2
LINENUMBER 87 L2
FRAME SAME1 java/lang/NoSuchMethodException
ASTORE 3
L12
LINENUMBER 88 L12
NEW java/lang/IllegalStateException
DUP
NEW java/lang/StringBuilder
DUP
INVOKESPECIAL java/lang/StringBuilder. ()V
LDC "Method ["
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
ALOAD 0
GETFIELD top/huzhurong/demo/asm/LocalVariableTableVisitor.name : Ljava/lang/String;
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
LDC "] was discovered in the .class file but cannot be resolved in the class object"
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
ALOAD 3
INVOKESPECIAL java/lang/IllegalStateException. (Ljava/lang/String;Ljava/lang/Throwable;)V
ATHROW
L13
LOCALVARIABLE i I L8 L0 3
LOCALVARIABLE ex Ljava/lang/NoSuchMethodException; L12 L13 3
LOCALVARIABLE this Ltop/huzhurong/demo/asm/LocalVariableTableVisitor; L5 L13 0
LOCALVARIABLE loader Ljava/lang/ClassLoader; L6 L13 1
LOCALVARIABLE argTypes [Ljava/lang/Class; L7 L13 2
// signature [Ljava/lang/Class;
// declaration: java.lang.Class>[]
MAXSTACK = 4
MAXLOCALS = 4
// access flags 0xA
private static computeLvtSlotIndices(Z[Lorg/objectweb/asm/Type;)[I
L0
LINENUMBER 94 L0
ALOAD 1
ARRAYLENGTH
NEWARRAY T_INT
ASTORE 2
L1
LINENUMBER 95 L1
ILOAD 0
IFEQ L2
ICONST_0
GOTO L3
L2
FRAME APPEND [[I]
ICONST_1
L3
FRAME SAME1 I
ISTORE 3
L4
LINENUMBER 96 L4
ICONST_0
ISTORE 4
L5
FRAME APPEND [I I]
ILOAD 4
ALOAD 1
ARRAYLENGTH
IF_ICMPGE L6
L7
LINENUMBER 97 L7
ALOAD 2
ILOAD 4
ILOAD 3
IASTORE
L8
LINENUMBER 98 L8
ALOAD 1
ILOAD 4
AALOAD
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.isWideType (Lorg/objectweb/asm/Type;)Z
IFEQ L9
L10
LINENUMBER 99 L10
IINC 3 2
GOTO L11
L9
LINENUMBER 101 L9
FRAME SAME
IINC 3 1
L11
LINENUMBER 96 L11
FRAME SAME
IINC 4 1
GOTO L5
L6
LINENUMBER 104 L6
FRAME CHOP 1
ALOAD 2
ARETURN
L12
LOCALVARIABLE i I L5 L6 4
LOCALVARIABLE isStatic Z L0 L12 0
LOCALVARIABLE paramTypes [Lorg/objectweb/asm/Type; L0 L12 1
LOCALVARIABLE lvtIndex [I L1 L12 2
LOCALVARIABLE nextIndex I L4 L12 3
MAXSTACK = 3
MAXLOCALS = 5
// access flags 0xA
private static isWideType(Lorg/objectweb/asm/Type;)Z
L0
LINENUMBER 109 L0
ALOAD 0
GETSTATIC org/objectweb/asm/Type.LONG_TYPE : Lorg/objectweb/asm/Type;
IF_ACMPEQ L1
ALOAD 0
GETSTATIC org/objectweb/asm/Type.DOUBLE_TYPE : Lorg/objectweb/asm/Type;
IF_ACMPNE L2
L1
FRAME SAME
ICONST_1
GOTO L3
L2
FRAME SAME
ICONST_0
L3
FRAME SAME1 I
IRETURN
L4
LOCALVARIABLE aType Lorg/objectweb/asm/Type; L0 L4 0
MAXSTACK = 2
MAXLOCALS = 1
// access flags 0x9
// signature (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
// declaration: java.lang.Class> resolveClassName(java.lang.String, java.lang.ClassLoader)
public static resolveClassName(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class; throws java/lang/IllegalArgumentException
TRYCATCHBLOCK L0 L1 L2 java/lang/IllegalAccessError
TRYCATCHBLOCK L0 L1 L3 java/lang/LinkageError
TRYCATCHBLOCK L0 L1 L4 java/lang/ClassNotFoundException
L0
LINENUMBER 117 L0
ALOAD 0
ALOAD 1
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.forName (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
L1
ARETURN
L2
LINENUMBER 118 L2
FRAME SAME1 java/lang/IllegalAccessError
ASTORE 2
L5
LINENUMBER 119 L5
NEW java/lang/IllegalStateException
DUP
NEW java/lang/StringBuilder
DUP
INVOKESPECIAL java/lang/StringBuilder. ()V
LDC "Readability mismatch in inheritance hierarchy of class ["
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
ALOAD 0
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
LDC "]: "
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
ALOAD 2
L6
LINENUMBER 120 L6
INVOKEVIRTUAL java/lang/IllegalAccessError.getMessage ()Ljava/lang/String;
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
ALOAD 2
INVOKESPECIAL java/lang/IllegalStateException. (Ljava/lang/String;Ljava/lang/Throwable;)V
ATHROW
L3
LINENUMBER 121 L3
FRAME SAME1 java/lang/LinkageError
ASTORE 2
L7
LINENUMBER 122 L7
NEW java/lang/IllegalArgumentException
DUP
NEW java/lang/StringBuilder
DUP
INVOKESPECIAL java/lang/StringBuilder. ()V
LDC "Unresolvable class definition for class ["
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
ALOAD 0
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
LDC "]"
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
ALOAD 2
INVOKESPECIAL java/lang/IllegalArgumentException. (Ljava/lang/String;Ljava/lang/Throwable;)V
ATHROW
L4
LINENUMBER 123 L4
FRAME SAME1 java/lang/ClassNotFoundException
ASTORE 2
L8
LINENUMBER 124 L8
NEW java/lang/IllegalArgumentException
DUP
NEW java/lang/StringBuilder
DUP
INVOKESPECIAL java/lang/StringBuilder. ()V
LDC "Could not find class ["
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
ALOAD 0
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
LDC "]"
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
ALOAD 2
INVOKESPECIAL java/lang/IllegalArgumentException. (Ljava/lang/String;Ljava/lang/Throwable;)V
ATHROW
L9
LOCALVARIABLE err Ljava/lang/IllegalAccessError; L5 L3 2
LOCALVARIABLE err Ljava/lang/LinkageError; L7 L4 2
LOCALVARIABLE ex Ljava/lang/ClassNotFoundException; L8 L9 2
LOCALVARIABLE className Ljava/lang/String; L0 L9 0
LOCALVARIABLE classLoader Ljava/lang/ClassLoader; L0 L9 1
MAXSTACK = 4
MAXLOCALS = 3
// access flags 0x9
// signature (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
// declaration: java.lang.Class> forName(java.lang.String, java.lang.ClassLoader)
public static forName(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class; throws java/lang/ClassNotFoundException java/lang/LinkageError
TRYCATCHBLOCK L0 L1 L2 java/lang/ClassNotFoundException
TRYCATCHBLOCK L3 L4 L5 java/lang/ClassNotFoundException
L6
LINENUMBER 132 L6
ALOAD 0
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.resolvePrimitiveClassName (Ljava/lang/String;)Ljava/lang/Class;
ASTORE 2
L7
LINENUMBER 133 L7
ALOAD 2
IFNULL L8
L9
LINENUMBER 134 L9
ALOAD 2
ARETURN
L8
LINENUMBER 138 L8
FRAME APPEND [java/lang/Class]
ALOAD 0
LDC "[]"
INVOKEVIRTUAL java/lang/String.endsWith (Ljava/lang/String;)Z
IFEQ L10
L11
LINENUMBER 139 L11
ALOAD 0
ICONST_0
ALOAD 0
INVOKEVIRTUAL java/lang/String.length ()I
LDC "[]"
INVOKEVIRTUAL java/lang/String.length ()I
ISUB
INVOKEVIRTUAL java/lang/String.substring (II)Ljava/lang/String;
ASTORE 3
L12
LINENUMBER 140 L12
ALOAD 3
ALOAD 1
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.forName (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
ASTORE 4
L13
LINENUMBER 141 L13
ALOAD 4
ICONST_0
INVOKESTATIC java/lang/reflect/Array.newInstance (Ljava/lang/Class;I)Ljava/lang/Object;
INVOKEVIRTUAL java/lang/Object.getClass ()Ljava/lang/Class;
ARETURN
L10
LINENUMBER 145 L10
FRAME SAME
ALOAD 0
LDC "[L"
INVOKEVIRTUAL java/lang/String.startsWith (Ljava/lang/String;)Z
IFEQ L14
ALOAD 0
LDC ";"
INVOKEVIRTUAL java/lang/String.endsWith (Ljava/lang/String;)Z
IFEQ L14
L15
LINENUMBER 146 L15
ALOAD 0
LDC "[L"
INVOKEVIRTUAL java/lang/String.length ()I
ALOAD 0
INVOKEVIRTUAL java/lang/String.length ()I
ICONST_1
ISUB
INVOKEVIRTUAL java/lang/String.substring (II)Ljava/lang/String;
ASTORE 3
L16
LINENUMBER 147 L16
ALOAD 3
ALOAD 1
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.forName (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
ASTORE 4
L17
LINENUMBER 148 L17
ALOAD 4
ICONST_0
INVOKESTATIC java/lang/reflect/Array.newInstance (Ljava/lang/Class;I)Ljava/lang/Object;
INVOKEVIRTUAL java/lang/Object.getClass ()Ljava/lang/Class;
ARETURN
L14
LINENUMBER 152 L14
FRAME SAME
ALOAD 0
LDC "["
INVOKEVIRTUAL java/lang/String.startsWith (Ljava/lang/String;)Z
IFEQ L18
L19
LINENUMBER 153 L19
ALOAD 0
LDC "["
INVOKEVIRTUAL java/lang/String.length ()I
INVOKEVIRTUAL java/lang/String.substring (I)Ljava/lang/String;
ASTORE 3
L20
LINENUMBER 154 L20
ALOAD 3
ALOAD 1
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.forName (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
ASTORE 4
L21
LINENUMBER 155 L21
ALOAD 4
ICONST_0
INVOKESTATIC java/lang/reflect/Array.newInstance (Ljava/lang/Class;I)Ljava/lang/Object;
INVOKEVIRTUAL java/lang/Object.getClass ()Ljava/lang/Class;
ARETURN
L18
LINENUMBER 158 L18
FRAME SAME
ALOAD 1
ASTORE 3
L22
LINENUMBER 159 L22
ALOAD 3
IFNONNULL L0
L23
LINENUMBER 160 L23
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.getDefaultClassLoader ()Ljava/lang/ClassLoader;
ASTORE 3
L0
LINENUMBER 163 L0
FRAME APPEND [java/lang/ClassLoader]
ALOAD 3
IFNULL L24
ALOAD 3
ALOAD 0
INVOKEVIRTUAL java/lang/ClassLoader.loadClass (Ljava/lang/String;)Ljava/lang/Class;
GOTO L1
L24
FRAME SAME
ALOAD 0
INVOKESTATIC java/lang/Class.forName (Ljava/lang/String;)Ljava/lang/Class;
L1
FRAME SAME1 java/lang/Class
ARETURN
L2
LINENUMBER 164 L2
FRAME SAME1 java/lang/ClassNotFoundException
ASTORE 4
L25
LINENUMBER 165 L25
ALOAD 0
BIPUSH 46
INVOKEVIRTUAL java/lang/String.lastIndexOf (I)I
ISTORE 5
L26
LINENUMBER 166 L26
ILOAD 5
ICONST_M1
IF_ICMPEQ L27
L28
LINENUMBER 167 L28
NEW java/lang/StringBuilder
DUP
INVOKESPECIAL java/lang/StringBuilder. ()V
ALOAD 0
ICONST_0
ILOAD 5
L29
LINENUMBER 168 L29
INVOKEVIRTUAL java/lang/String.substring (II)Ljava/lang/String;
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
BIPUSH 36
INVOKEVIRTUAL java/lang/StringBuilder.append (C)Ljava/lang/StringBuilder;
ALOAD 0
ILOAD 5
ICONST_1
IADD
INVOKEVIRTUAL java/lang/String.substring (I)Ljava/lang/String;
INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder;
INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String;
ASTORE 6
L3
LINENUMBER 170 L3
ALOAD 3
IFNULL L30
ALOAD 3
ALOAD 6
INVOKEVIRTUAL java/lang/ClassLoader.loadClass (Ljava/lang/String;)Ljava/lang/Class;
GOTO L4
L30
FRAME APPEND [java/lang/ClassNotFoundException I java/lang/String]
ALOAD 6
INVOKESTATIC java/lang/Class.forName (Ljava/lang/String;)Ljava/lang/Class;
L4
FRAME SAME1 java/lang/Class
ARETURN
L5
LINENUMBER 171 L5
FRAME SAME1 java/lang/ClassNotFoundException
ASTORE 7
L27
LINENUMBER 175 L27
FRAME CHOP 1
ALOAD 4
ATHROW
L31
LOCALVARIABLE elementClassName Ljava/lang/String; L12 L10 3
LOCALVARIABLE elementClass Ljava/lang/Class; L13 L10 4
// signature Ljava/lang/Class;
// declaration: java.lang.Class>
LOCALVARIABLE elementName Ljava/lang/String; L16 L14 3
LOCALVARIABLE elementClass Ljava/lang/Class; L17 L14 4
// signature Ljava/lang/Class;
// declaration: java.lang.Class>
LOCALVARIABLE elementName Ljava/lang/String; L20 L18 3
LOCALVARIABLE elementClass Ljava/lang/Class; L21 L18 4
// signature Ljava/lang/Class;
// declaration: java.lang.Class>
LOCALVARIABLE innerClassName Ljava/lang/String; L3 L27 6
LOCALVARIABLE lastDotIndex I L26 L31 5
LOCALVARIABLE ex Ljava/lang/ClassNotFoundException; L25 L31 4
LOCALVARIABLE name Ljava/lang/String; L6 L31 0
LOCALVARIABLE classLoader Ljava/lang/ClassLoader; L6 L31 1
LOCALVARIABLE clazz Ljava/lang/Class; L7 L31 2
// signature Ljava/lang/Class;
// declaration: java.lang.Class>
LOCALVARIABLE clToUse Ljava/lang/ClassLoader; L22 L31 3
MAXSTACK = 4
MAXLOCALS = 8
// access flags 0x9
// signature (Ljava/lang/String;)Ljava/lang/Class;
// declaration: java.lang.Class> resolvePrimitiveClassName(java.lang.String)
public static resolvePrimitiveClassName(Ljava/lang/String;)Ljava/lang/Class;
L0
LINENUMBER 220 L0
ACONST_NULL
ASTORE 1
L1
LINENUMBER 223 L1
ALOAD 0
IFNULL L2
ALOAD 0
INVOKEVIRTUAL java/lang/String.length ()I
BIPUSH 8
IF_ICMPGT L2
L3
LINENUMBER 225 L3
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveTypeNameMap : Ljava/util/Map;
ALOAD 0
INVOKEINTERFACE java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object;
CHECKCAST java/lang/Class
ASTORE 1
L2
LINENUMBER 227 L2
FRAME APPEND [java/lang/Class]
ALOAD 1
ARETURN
L4
LOCALVARIABLE name Ljava/lang/String; L0 L4 0
LOCALVARIABLE result Ljava/lang/Class; L1 L4 1
// signature Ljava/lang/Class;
// declaration: java.lang.Class>
MAXSTACK = 2
MAXLOCALS = 2
// access flags 0x8A
// signature ([Ljava/lang/Class;)V
// declaration: void registerCommonClasses(java.lang.Class>[])
private static transient varargs registerCommonClasses([Ljava/lang/Class;)V
L0
LINENUMBER 276 L0
ALOAD 0
ASTORE 1
ALOAD 1
ARRAYLENGTH
ISTORE 2
ICONST_0
ISTORE 3
L1
FRAME APPEND [[Ljava/lang/Class; I I]
ILOAD 3
ILOAD 2
IF_ICMPGE L2
ALOAD 1
ILOAD 3
AALOAD
ASTORE 4
L3
LINENUMBER 277 L3
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.commonClassCache : Ljava/util/Map;
ALOAD 4
INVOKEVIRTUAL java/lang/Class.getName ()Ljava/lang/String;
ALOAD 4
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L4
LINENUMBER 276 L4
IINC 3 1
GOTO L1
L2
LINENUMBER 279 L2
FRAME CHOP 3
RETURN
L5
LOCALVARIABLE clazz Ljava/lang/Class; L3 L4 4
// signature Ljava/lang/Class;
// declaration: java.lang.Class>
LOCALVARIABLE commonClasses [Ljava/lang/Class; L0 L5 0
// signature [Ljava/lang/Class;
// declaration: java.lang.Class>[]
MAXSTACK = 3
MAXLOCALS = 5
// access flags 0x9
public static getDefaultClassLoader()Ljava/lang/ClassLoader;
TRYCATCHBLOCK L0 L1 L2 java/lang/Throwable
TRYCATCHBLOCK L3 L4 L5 java/lang/Throwable
L6
LINENUMBER 282 L6
ACONST_NULL
ASTORE 0
L0
LINENUMBER 284 L0
INVOKESTATIC java/lang/Thread.currentThread ()Ljava/lang/Thread;
INVOKEVIRTUAL java/lang/Thread.getContextClassLoader ()Ljava/lang/ClassLoader;
ASTORE 0
L1
LINENUMBER 287 L1
GOTO L7
L2
LINENUMBER 285 L2
FRAME FULL [java/lang/ClassLoader] [java/lang/Throwable]
ASTORE 1
L7
LINENUMBER 288 L7
FRAME SAME
ALOAD 0
IFNONNULL L8
L9
LINENUMBER 290 L9
LDC Lorg/springframework/util/ClassUtils;.class
INVOKEVIRTUAL java/lang/Class.getClassLoader ()Ljava/lang/ClassLoader;
ASTORE 0
L10
LINENUMBER 291 L10
ALOAD 0
IFNONNULL L8
L3
LINENUMBER 294 L3
INVOKESTATIC java/lang/ClassLoader.getSystemClassLoader ()Ljava/lang/ClassLoader;
ASTORE 0
L4
LINENUMBER 297 L4
GOTO L8
L5
LINENUMBER 295 L5
FRAME SAME1 java/lang/Throwable
ASTORE 1
L8
LINENUMBER 300 L8
FRAME SAME
ALOAD 0
ARETURN
L11
LOCALVARIABLE cl Ljava/lang/ClassLoader; L0 L11 0
MAXSTACK = 1
MAXLOCALS = 2
// access flags 0x100A
private static synthetic lambda$static$0(Ljava/lang/Class;Ljava/lang/Class;)V
L0
LINENUMBER 248 L0
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveTypeToWrapperMap : Ljava/util/Map;
ALOAD 1
ALOAD 0
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L1
LINENUMBER 249 L1
ICONST_1
ANEWARRAY java/lang/Class
DUP
ICONST_0
ALOAD 0
AASTORE
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.registerCommonClasses ([Ljava/lang/Class;)V
L2
LINENUMBER 250 L2
RETURN
L3
LOCALVARIABLE key Ljava/lang/Class; L0 L3 0
LOCALVARIABLE value Ljava/lang/Class; L0 L3 1
MAXSTACK = 4
MAXLOCALS = 2
// access flags 0x8
static ()V
L0
LINENUMBER 231 L0
NEW java/util/HashMap
DUP
BIPUSH 32
INVOKESPECIAL java/util/HashMap. (I)V
PUTSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveTypeNameMap : Ljava/util/Map;
L1
LINENUMBER 232 L1
NEW java/util/IdentityHashMap
DUP
BIPUSH 8
INVOKESPECIAL java/util/IdentityHashMap. (I)V
PUTSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
L2
LINENUMBER 233 L2
NEW java/util/IdentityHashMap
DUP
BIPUSH 8
INVOKESPECIAL java/util/IdentityHashMap. (I)V
PUTSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveTypeToWrapperMap : Ljava/util/Map;
L3
LINENUMBER 234 L3
NEW java/util/HashMap
DUP
BIPUSH 64
INVOKESPECIAL java/util/HashMap. (I)V
PUTSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.commonClassCache : Ljava/util/Map;
L4
LINENUMBER 238 L4
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
LDC Ljava/lang/Boolean;.class
GETSTATIC java/lang/Boolean.TYPE : Ljava/lang/Class;
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L5
LINENUMBER 239 L5
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
LDC Ljava/lang/Byte;.class
GETSTATIC java/lang/Byte.TYPE : Ljava/lang/Class;
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L6
LINENUMBER 240 L6
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
LDC Ljava/lang/Character;.class
GETSTATIC java/lang/Character.TYPE : Ljava/lang/Class;
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L7
LINENUMBER 241 L7
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
LDC Ljava/lang/Double;.class
GETSTATIC java/lang/Double.TYPE : Ljava/lang/Class;
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L8
LINENUMBER 242 L8
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
LDC Ljava/lang/Float;.class
GETSTATIC java/lang/Float.TYPE : Ljava/lang/Class;
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L9
LINENUMBER 243 L9
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
LDC Ljava/lang/Integer;.class
GETSTATIC java/lang/Integer.TYPE : Ljava/lang/Class;
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L10
LINENUMBER 244 L10
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
LDC Ljava/lang/Long;.class
GETSTATIC java/lang/Long.TYPE : Ljava/lang/Class;
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L11
LINENUMBER 245 L11
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
LDC Ljava/lang/Short;.class
GETSTATIC java/lang/Short.TYPE : Ljava/lang/Class;
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L12
LINENUMBER 247 L12
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
INVOKEDYNAMIC accept()Ljava/util/function/BiConsumer; [
// handle kind 0x6 : INVOKESTATIC
java/lang/invoke/LambdaMetafactory.metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
// arguments:
(Ljava/lang/Object;Ljava/lang/Object;)V,
// handle kind 0x6 : INVOKESTATIC
top/huzhurong/demo/asm/LocalVariableTableVisitor.lambda$static$0(Ljava/lang/Class;Ljava/lang/Class;)V,
(Ljava/lang/Class;Ljava/lang/Class;)V
]
INVOKEINTERFACE java/util/Map.forEach (Ljava/util/function/BiConsumer;)V
L13
LINENUMBER 252 L13
NEW java/util/HashSet
DUP
BIPUSH 32
INVOKESPECIAL java/util/HashSet. (I)V
ASTORE 0
L14
LINENUMBER 253 L14
ALOAD 0
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveWrapperTypeMap : Ljava/util/Map;
INVOKEINTERFACE java/util/Map.values ()Ljava/util/Collection;
INVOKEINTERFACE java/util/Set.addAll (Ljava/util/Collection;)Z
POP
L15
LINENUMBER 254 L15
ALOAD 0
BIPUSH 8
ANEWARRAY java/lang/Class
DUP
ICONST_0
LDC [Z.class
AASTORE
DUP
ICONST_1
LDC [B.class
AASTORE
DUP
ICONST_2
LDC [C.class
AASTORE
DUP
ICONST_3
LDC [D.class
AASTORE
DUP
ICONST_4
LDC [F.class
AASTORE
DUP
ICONST_5
LDC [I.class
AASTORE
DUP
BIPUSH 6
LDC [J.class
AASTORE
DUP
BIPUSH 7
LDC [S.class
AASTORE
INVOKESTATIC java/util/Collections.addAll (Ljava/util/Collection;[Ljava/lang/Object;)Z
POP
L16
LINENUMBER 256 L16
ALOAD 0
GETSTATIC java/lang/Void.TYPE : Ljava/lang/Class;
INVOKEINTERFACE java/util/Set.add (Ljava/lang/Object;)Z
POP
L17
LINENUMBER 257 L17
ALOAD 0
INVOKEINTERFACE java/util/Set.iterator ()Ljava/util/Iterator;
ASTORE 1
L18
FRAME APPEND [java/util/Set java/util/Iterator]
ALOAD 1
INVOKEINTERFACE java/util/Iterator.hasNext ()Z
IFEQ L19
ALOAD 1
INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
CHECKCAST java/lang/Class
ASTORE 2
L20
LINENUMBER 258 L20
GETSTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.primitiveTypeNameMap : Ljava/util/Map;
ALOAD 2
INVOKEVIRTUAL java/lang/Class.getName ()Ljava/lang/String;
ALOAD 2
INVOKEINTERFACE java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
POP
L21
LINENUMBER 259 L21
GOTO L18
L19
LINENUMBER 261 L19
FRAME CHOP 1
BIPUSH 8
ANEWARRAY java/lang/Class
DUP
ICONST_0
LDC [Ljava/lang/Boolean;.class
AASTORE
DUP
ICONST_1
LDC [Ljava/lang/Byte;.class
AASTORE
DUP
ICONST_2
LDC [Ljava/lang/Character;.class
AASTORE
DUP
ICONST_3
LDC [Ljava/lang/Double;.class
AASTORE
DUP
ICONST_4
LDC [Ljava/lang/Float;.class
AASTORE
DUP
ICONST_5
LDC [Ljava/lang/Integer;.class
AASTORE
DUP
BIPUSH 6
LDC [Ljava/lang/Long;.class
AASTORE
DUP
BIPUSH 7
LDC [Ljava/lang/Short;.class
AASTORE
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.registerCommonClasses ([Ljava/lang/Class;)V
L22
LINENUMBER 263 L22
BIPUSH 8
ANEWARRAY java/lang/Class
DUP
ICONST_0
LDC Ljava/lang/Number;.class
AASTORE
DUP
ICONST_1
LDC [Ljava/lang/Number;.class
AASTORE
DUP
ICONST_2
LDC Ljava/lang/String;.class
AASTORE
DUP
ICONST_3
LDC [Ljava/lang/String;.class
AASTORE
DUP
ICONST_4
LDC Ljava/lang/Class;.class
AASTORE
DUP
ICONST_5
LDC [Ljava/lang/Class;.class
AASTORE
DUP
BIPUSH 6
LDC Ljava/lang/Object;.class
AASTORE
DUP
BIPUSH 7
LDC [Ljava/lang/Object;.class
AASTORE
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.registerCommonClasses ([Ljava/lang/Class;)V
L23
LINENUMBER 265 L23
BIPUSH 6
ANEWARRAY java/lang/Class
DUP
ICONST_0
LDC Ljava/lang/Throwable;.class
AASTORE
DUP
ICONST_1
LDC Ljava/lang/Exception;.class
AASTORE
DUP
ICONST_2
LDC Ljava/lang/RuntimeException;.class
AASTORE
DUP
ICONST_3
LDC Ljava/lang/Error;.class
AASTORE
DUP
ICONST_4
LDC Ljava/lang/StackTraceElement;.class
AASTORE
DUP
ICONST_5
LDC [Ljava/lang/StackTraceElement;.class
AASTORE
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.registerCommonClasses ([Ljava/lang/Class;)V
L24
LINENUMBER 267 L24
BIPUSH 10
ANEWARRAY java/lang/Class
DUP
ICONST_0
LDC Ljava/lang/Enum;.class
AASTORE
DUP
ICONST_1
LDC Ljava/lang/Iterable;.class
AASTORE
DUP
ICONST_2
LDC Ljava/util/Iterator;.class
AASTORE
DUP
ICONST_3
LDC Ljava/util/Enumeration;.class
AASTORE
DUP
ICONST_4
LDC Ljava/util/Collection;.class
AASTORE
DUP
ICONST_5
LDC Ljava/util/List;.class
AASTORE
DUP
BIPUSH 6
LDC Ljava/util/Set;.class
AASTORE
DUP
BIPUSH 7
LDC Ljava/util/Map;.class
AASTORE
DUP
BIPUSH 8
LDC Ljava/util/Map$Entry;.class
AASTORE
DUP
BIPUSH 9
LDC Ljava/util/Optional;.class
AASTORE
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.registerCommonClasses ([Ljava/lang/Class;)V
L25
LINENUMBER 270 L25
BIPUSH 6
ANEWARRAY java/lang/Class
DUP
ICONST_0
LDC Ljava/io/Serializable;.class
AASTORE
DUP
ICONST_1
LDC Ljava/io/Externalizable;.class
AASTORE
DUP
ICONST_2
LDC Ljava/io/Closeable;.class
AASTORE
DUP
ICONST_3
LDC Ljava/lang/AutoCloseable;.class
AASTORE
DUP
ICONST_4
LDC Ljava/lang/Cloneable;.class
AASTORE
DUP
ICONST_5
LDC Ljava/lang/Comparable;.class
AASTORE
ASTORE 1
L26
LINENUMBER 272 L26
ALOAD 1
INVOKESTATIC top/huzhurong/demo/asm/LocalVariableTableVisitor.registerCommonClasses ([Ljava/lang/Class;)V
L27
LINENUMBER 273 L27
RETURN
LOCALVARIABLE primitiveType Ljava/lang/Class; L20 L21 2
// signature Ljava/lang/Class;
// declaration: java.lang.Class>
LOCALVARIABLE primitiveTypes Ljava/util/Set; L14 L27 0
// signature Ljava/util/Set;>;
// declaration: java.util.Set>
LOCALVARIABLE javaLanguageInterfaceArray [Ljava/lang/Class; L26 L27 1
// signature [Ljava/lang/Class;
// declaration: java.lang.Class>[]
MAXSTACK = 5
MAXLOCALS = 3
}