public class org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter extends org.glassfish.pfl.objectweb.asm.commons.GeneratorAdapter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter
super_class: org.glassfish.pfl.objectweb.asm.commons.GeneratorAdapter
{
private int access;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String desc;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
final org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer this$0;
descriptor: Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer, org.glassfish.pfl.objectweb.asm.MethodVisitor, int, java.lang.String, java.lang.String);
descriptor: (Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer;Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;ILjava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=6
start local 0 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
putfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer;
1: aload 0
aload 2
iload 3
aload 4
aload 5
invokespecial org.glassfish.pfl.objectweb.asm.commons.GeneratorAdapter.<init>:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;ILjava/lang/String;Ljava/lang/String;)V
2: aload 0
iload 3
putfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.access:I
3: aload 0
aload 4
putfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.name:Ljava/lang/String;
4: aload 0
aload 5
putfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.desc:Ljava/lang/String;
5: return
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer$InfoMethodRewriter;
0 6 2 mv Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
0 6 3 acc I
0 6 4 name Ljava/lang/String;
0 6 5 desc Ljava/lang/String;
MethodParameters:
Name Flags
this$0 final
mv
acc
name
desc
public void visitCode();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=1
start local 0 0: aload 0
invokespecial org.glassfish.pfl.objectweb.asm.commons.GeneratorAdapter.visitCode:()V
1: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer;
iconst_2
new java.lang.StringBuilder
dup
ldc "InfoMethodRewriter: visitCode "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.desc:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer.info:(ILjava/lang/String;)V
2: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.access:I
3: bipush 8
4: invokevirtual org.glassfish.pfl.tf.spi.Util.hasAccess:(II)Z
istore 1
start local 1 5: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.desc:Ljava/lang/String;
invokestatic org.glassfish.pfl.objectweb.asm.Type.getArgumentTypes:(Ljava/lang/String;)[Lorg/glassfish/pfl/objectweb/asm/Type;
astore 2
start local 2 6: iload 1
ifeq 7
iconst_0
goto 8
StackMap locals: int org.glassfish.pfl.objectweb.asm.Type[]
StackMap stack:
7: iconst_1
StackMap locals:
StackMap stack: int
8: istore 3
start local 3 9: aload 2
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 13
StackMap locals: org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter int org.glassfish.pfl.objectweb.asm.Type[] int top int int org.glassfish.pfl.objectweb.asm.Type[]
StackMap stack:
10: aload 7
iload 5
aaload
astore 4
start local 4 11: iload 3
aload 4
invokevirtual org.glassfish.pfl.objectweb.asm.Type.getSize:()I
iadd
istore 3
end local 4 12: iinc 5 1
StackMap locals:
StackMap stack:
13: iload 5
iload 6
if_icmplt 10
14: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer;
iconst_2
new java.lang.StringBuilder
dup
ldc "InfoMethodRewriter: initial arg size "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer.info:(ILjava/lang/String;)V
15: iload 3
istore 4
start local 4 16: iload 3
iconst_1
iadd
istore 5
start local 5 17: new org.glassfish.pfl.objectweb.asm.Label
dup
invokespecial org.glassfish.pfl.objectweb.asm.Label.<init>:()V
astore 6
start local 6 18: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
iload 4
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
19: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 198
aload 6
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitJumpInsn:(ILorg/glassfish/pfl/objectweb/asm/Label;)V
20: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 25
iload 4
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
21: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.access:I
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.desc:Ljava/lang/String;
invokevirtual org.glassfish.pfl.tf.spi.Util.wrapArgs:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;ILjava/lang/String;)V
22: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
bipush 21
iload 5
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
23: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer.util:Lorg/glassfish/pfl/tf/spi/Util;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.this$0:Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer;
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer.ecd:Lorg/glassfish/pfl/tf/spi/EnhancedClassData;
aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.name:Ljava/lang/String;
invokeinterface org.glassfish.pfl.tf.spi.EnhancedClassData.getMethodIndex:(Ljava/lang/String;)I
invokevirtual org.glassfish.pfl.tf.spi.Util.emitIntConstant:(Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;I)V
24: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
sipush 185
25: getstatic org.glassfish.pfl.tf.spi.EnhancedClassData.MM_NAME:Ljava/lang/String;
ldc "info"
26: ldc "([Ljava/lang/Object;II)V"
27: invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
28: aload 0
getfield org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter.mv:Lorg/glassfish/pfl/objectweb/asm/MethodVisitor;
aload 6
invokeinterface org.glassfish.pfl.objectweb.asm.MethodVisitor.visitLabel:(Lorg/glassfish/pfl/objectweb/asm/Label;)V
29: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lorg/glassfish/pfl/tf/tools/enhancer/ClassEnhancer$InfoMethodRewriter;
5 30 1 isStatic Z
6 30 2 argTypes [Lorg/glassfish/pfl/objectweb/asm/Type;
9 30 3 argSize I
11 12 4 type Lorg/glassfish/pfl/objectweb/asm/Type;
16 30 4 mmIndex I
17 30 5 cidIndex I
18 30 6 jumpLabel Lorg/glassfish/pfl/objectweb/asm/Label;
}
SourceFile: "ClassEnhancer.java"
NestHost: org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer
InnerClasses:
public InfoMethodRewriter = org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer$InfoMethodRewriter of org.glassfish.pfl.tf.tools.enhancer.ClassEnhancer