class javassist.bytecode.TypeAnnotationsAttribute$Copier extends javassist.bytecode.AnnotationsAttribute$Copier
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: javassist.bytecode.TypeAnnotationsAttribute$Copier
super_class: javassist.bytecode.AnnotationsAttribute$Copier
{
javassist.bytecode.TypeAnnotationsAttribute$SubCopier sub;
descriptor: Ljavassist/bytecode/TypeAnnotationsAttribute$SubCopier;
flags: (0x0000)
void <init>(byte[], javassist.bytecode.ConstPool, javassist.bytecode.ConstPool, java.util.Map<java.lang.String, java.lang.String>);
descriptor: ([BLjavassist/bytecode/ConstPool;Ljavassist/bytecode/ConstPool;Ljava/util/Map;)V
flags: (0x0000)
Code:
stack=8, locals=6, args_size=5
start local 0 // javassist.bytecode.TypeAnnotationsAttribute$Copier this
start local 1 // byte[] attrInfo
start local 2 // javassist.bytecode.ConstPool src
start local 3 // javassist.bytecode.ConstPool dest
start local 4 // java.util.Map map
0: .line 270
aload 0 /* this */
aload 1 /* attrInfo */
aload 2 /* src */
aload 3 /* dest */
aload 4 /* map */
iconst_0
invokespecial javassist.bytecode.AnnotationsAttribute$Copier.<init>:([BLjavassist/bytecode/ConstPool;Ljavassist/bytecode/ConstPool;Ljava/util/Map;Z)V
1: .line 271
new javassist.bytecode.annotation.TypeAnnotationsWriter
dup
aload 0 /* this */
getfield javassist.bytecode.TypeAnnotationsAttribute$Copier.output:Ljava/io/ByteArrayOutputStream;
aload 3 /* dest */
invokespecial javassist.bytecode.annotation.TypeAnnotationsWriter.<init>:(Ljava/io/OutputStream;Ljavassist/bytecode/ConstPool;)V
astore 5 /* w */
start local 5 // javassist.bytecode.annotation.TypeAnnotationsWriter w
2: .line 272
aload 0 /* this */
aload 5 /* w */
putfield javassist.bytecode.TypeAnnotationsAttribute$Copier.writer:Ljavassist/bytecode/annotation/AnnotationsWriter;
3: .line 273
aload 0 /* this */
new javassist.bytecode.TypeAnnotationsAttribute$SubCopier
dup
aload 1 /* attrInfo */
aload 2 /* src */
aload 3 /* dest */
aload 4 /* map */
aload 5 /* w */
invokespecial javassist.bytecode.TypeAnnotationsAttribute$SubCopier.<init>:([BLjavassist/bytecode/ConstPool;Ljavassist/bytecode/ConstPool;Ljava/util/Map;Ljavassist/bytecode/annotation/TypeAnnotationsWriter;)V
putfield javassist.bytecode.TypeAnnotationsAttribute$Copier.sub:Ljavassist/bytecode/TypeAnnotationsAttribute$SubCopier;
4: .line 274
return
end local 5 // javassist.bytecode.annotation.TypeAnnotationsWriter w
end local 4 // java.util.Map map
end local 3 // javassist.bytecode.ConstPool dest
end local 2 // javassist.bytecode.ConstPool src
end local 1 // byte[] attrInfo
end local 0 // javassist.bytecode.TypeAnnotationsAttribute$Copier this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljavassist/bytecode/TypeAnnotationsAttribute$Copier;
0 5 1 attrInfo [B
0 5 2 src Ljavassist/bytecode/ConstPool;
0 5 3 dest Ljavassist/bytecode/ConstPool;
0 5 4 map Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
2 5 5 w Ljavassist/bytecode/annotation/TypeAnnotationsWriter;
Signature: ([BLjavassist/bytecode/ConstPool;Ljavassist/bytecode/ConstPool;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)V
MethodParameters:
Name Flags
attrInfo
src
dest
map
int annotationArray(int, int);
descriptor: (II)I
flags: (0x0000)
Code:
stack=3, locals=5, args_size=3
start local 0 // javassist.bytecode.TypeAnnotationsAttribute$Copier this
start local 1 // int pos
start local 2 // int num
0: .line 278
aload 0 /* this */
getfield javassist.bytecode.TypeAnnotationsAttribute$Copier.writer:Ljavassist/bytecode/annotation/AnnotationsWriter;
iload 2 /* num */
invokevirtual javassist.bytecode.annotation.AnnotationsWriter.numAnnotations:(I)V
1: .line 279
iconst_0
istore 3 /* i */
start local 3 // int i
2: goto 8
3: .line 280
StackMap locals: int
StackMap stack:
aload 0 /* this */
getfield javassist.bytecode.TypeAnnotationsAttribute$Copier.info:[B
iload 1 /* pos */
baload
sipush 255
iand
istore 4 /* targetType */
start local 4 // int targetType
4: .line 281
aload 0 /* this */
getfield javassist.bytecode.TypeAnnotationsAttribute$Copier.sub:Ljavassist/bytecode/TypeAnnotationsAttribute$SubCopier;
iload 1 /* pos */
iconst_1
iadd
iload 4 /* targetType */
invokevirtual javassist.bytecode.TypeAnnotationsAttribute$SubCopier.targetInfo:(II)I
istore 1 /* pos */
5: .line 282
aload 0 /* this */
getfield javassist.bytecode.TypeAnnotationsAttribute$Copier.sub:Ljavassist/bytecode/TypeAnnotationsAttribute$SubCopier;
iload 1 /* pos */
invokevirtual javassist.bytecode.TypeAnnotationsAttribute$SubCopier.typePath:(I)I
istore 1 /* pos */
6: .line 283
aload 0 /* this */
iload 1 /* pos */
invokevirtual javassist.bytecode.TypeAnnotationsAttribute$Copier.annotation:(I)I
istore 1 /* pos */
end local 4 // int targetType
7: .line 279
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
8: iload 3 /* i */
iload 2 /* num */
if_icmplt 3
end local 3 // int i
9: .line 286
iload 1 /* pos */
ireturn
end local 2 // int num
end local 1 // int pos
end local 0 // javassist.bytecode.TypeAnnotationsAttribute$Copier this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljavassist/bytecode/TypeAnnotationsAttribute$Copier;
0 10 1 pos I
0 10 2 num I
2 9 3 i I
4 7 4 targetType I
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
pos
num
}
SourceFile: "TypeAnnotationsAttribute.java"
NestHost: javassist.bytecode.TypeAnnotationsAttribute
InnerClasses:
Copier = javassist.bytecode.AnnotationsAttribute$Copier of javassist.bytecode.AnnotationsAttribute
Copier = javassist.bytecode.TypeAnnotationsAttribute$Copier of javassist.bytecode.TypeAnnotationsAttribute
SubCopier = javassist.bytecode.TypeAnnotationsAttribute$SubCopier of javassist.bytecode.TypeAnnotationsAttribute