class com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter extends com.sun.tools.javac.jvm.ClassReader$AnnotationCompleter
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter
super_class: com.sun.tools.javac.jvm.ClassReader$AnnotationCompleter
{
com.sun.tools.javac.util.List<com.sun.tools.javac.jvm.ClassReader$TypeAnnotationProxy> proxies;
descriptor: Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Signature: Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/jvm/ClassReader$TypeAnnotationProxy;>;
final com.sun.tools.javac.jvm.ClassReader this$0;
descriptor: Lcom/sun/tools/javac/jvm/ClassReader;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.sun.tools.javac.code.Symbol, com.sun.tools.javac.util.List<com.sun.tools.javac.jvm.ClassReader$TypeAnnotationProxy>);
descriptor: (Lcom/sun/tools/javac/jvm/ClassReader;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/List;)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 // com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter this
start local 2 // com.sun.tools.javac.code.Symbol sym
start local 3 // com.sun.tools.javac.util.List proxies
0: .line 2152
aload 0 /* this */
aload 1
putfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
1: .line 2153
aload 0 /* this */
aload 1
aload 2 /* sym */
invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
invokespecial com.sun.tools.javac.jvm.ClassReader$AnnotationCompleter.<init>:(Lcom/sun/tools/javac/jvm/ClassReader;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/List;)V
2: .line 2154
aload 0 /* this */
aload 3 /* proxies */
putfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.proxies:Lcom/sun/tools/javac/util/List;
3: .line 2155
return
end local 3 // com.sun.tools.javac.util.List proxies
end local 2 // com.sun.tools.javac.code.Symbol sym
end local 0 // com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/jvm/ClassReader$TypeAnnotationCompleter;
0 4 2 sym Lcom/sun/tools/javac/code/Symbol;
0 4 3 proxies Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/jvm/ClassReader$TypeAnnotationProxy;>;
Signature: (Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/jvm/ClassReader$TypeAnnotationProxy;>;)V
MethodParameters:
Name Flags
this$0 final
sym
proxies
com.sun.tools.javac.util.List<com.sun.tools.javac.code.Attribute$TypeCompound> deproxyTypeCompoundList(com.sun.tools.javac.util.List<com.sun.tools.javac.jvm.ClassReader$TypeAnnotationProxy>);
descriptor: (Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
flags: (0x0000)
Code:
stack=4, locals=7, args_size=2
start local 0 // com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter this
start local 1 // com.sun.tools.javac.util.List proxies
0: .line 2158
new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 2 /* buf */
start local 2 // com.sun.tools.javac.util.ListBuffer buf
1: .line 2159
aload 1 /* proxies */
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter com.sun.tools.javac.util.List com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.ClassReader$TypeAnnotationProxy
astore 3 /* proxy */
start local 3 // com.sun.tools.javac.jvm.ClassReader$TypeAnnotationProxy proxy
3: .line 2160
aload 0 /* this */
aload 3 /* proxy */
getfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationProxy.compound:Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
invokevirtual com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.deproxyCompound:(Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;)Lcom/sun/tools/javac/code/Attribute$Compound;
astore 5 /* compound */
start local 5 // com.sun.tools.javac.code.Attribute$Compound compound
4: .line 2161
new com.sun.tools.javac.code.Attribute$TypeCompound
dup
aload 5 /* compound */
aload 3 /* proxy */
getfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationProxy.position:Lcom/sun/tools/javac/code/TypeAnnotationPosition;
invokespecial com.sun.tools.javac.code.Attribute$TypeCompound.<init>:(Lcom/sun/tools/javac/code/Attribute$Compound;Lcom/sun/tools/javac/code/TypeAnnotationPosition;)V
astore 6 /* typeCompound */
start local 6 // com.sun.tools.javac.code.Attribute$TypeCompound typeCompound
5: .line 2162
aload 2 /* buf */
aload 6 /* typeCompound */
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
end local 6 // com.sun.tools.javac.code.Attribute$TypeCompound typeCompound
end local 5 // com.sun.tools.javac.code.Attribute$Compound compound
end local 3 // com.sun.tools.javac.jvm.ClassReader$TypeAnnotationProxy proxy
6: .line 2159
StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
7: .line 2164
aload 2 /* buf */
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 2 // com.sun.tools.javac.util.ListBuffer buf
end local 1 // com.sun.tools.javac.util.List proxies
end local 0 // com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/jvm/ClassReader$TypeAnnotationCompleter;
0 8 1 proxies Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/jvm/ClassReader$TypeAnnotationProxy;>;
1 8 2 buf Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
3 6 3 proxy Lcom/sun/tools/javac/jvm/ClassReader$TypeAnnotationProxy;
4 6 5 compound Lcom/sun/tools/javac/code/Attribute$Compound;
5 6 6 typeCompound Lcom/sun/tools/javac/code/Attribute$TypeCompound;
Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/jvm/ClassReader$TypeAnnotationProxy;>;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
MethodParameters:
Name Flags
proxies
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 // com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter this
0: .line 2169
aload 0 /* this */
getfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
getfield com.sun.tools.javac.jvm.ClassReader.currentClassFile:Ljavax/tools/JavaFileObject;
astore 1 /* previousClassFile */
start local 1 // javax.tools.JavaFileObject previousClassFile
1: .line 2171
aload 0 /* this */
getfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
aload 0 /* this */
getfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.classFile:Ljavax/tools/JavaFileObject;
putfield com.sun.tools.javac.jvm.ClassReader.currentClassFile:Ljavax/tools/JavaFileObject;
2: .line 2172
aload 0 /* this */
aload 0 /* this */
getfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.proxies:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.deproxyTypeCompoundList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
astore 2 /* newList */
start local 2 // com.sun.tools.javac.util.List newList
3: .line 2173
aload 0 /* this */
getfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.sym:Lcom/sun/tools/javac/code/Symbol;
aload 2 /* newList */
aload 0 /* this */
getfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.sym:Lcom/sun/tools/javac/code/Symbol;
invokevirtual com.sun.tools.javac.code.Symbol.getRawTypeAttributes:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.prependList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.code.Symbol.setTypeAttributes:(Lcom/sun/tools/javac/util/List;)V
end local 2 // com.sun.tools.javac.util.List newList
4: .line 2174
goto 8
StackMap locals: com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter javax.tools.JavaFileObject
StackMap stack: java.lang.Throwable
5: astore 3
6: .line 2175
aload 0 /* this */
getfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
aload 1 /* previousClassFile */
putfield com.sun.tools.javac.jvm.ClassReader.currentClassFile:Ljavax/tools/JavaFileObject;
7: .line 2176
aload 3
athrow
8: .line 2175
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
aload 1 /* previousClassFile */
putfield com.sun.tools.javac.jvm.ClassReader.currentClassFile:Ljavax/tools/JavaFileObject;
9: .line 2177
return
end local 1 // javax.tools.JavaFileObject previousClassFile
end local 0 // com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/javac/jvm/ClassReader$TypeAnnotationCompleter;
1 10 1 previousClassFile Ljavax/tools/JavaFileObject;
3 4 2 newList Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Attribute$TypeCompound;>;
Exception table:
from to target type
1 5 5 any
}
SourceFile: "ClassReader.java"
NestHost: com.sun.tools.javac.jvm.ClassReader
InnerClasses:
public Compound = com.sun.tools.javac.code.Attribute$Compound of com.sun.tools.javac.code.Attribute
public TypeCompound = com.sun.tools.javac.code.Attribute$TypeCompound of com.sun.tools.javac.code.Attribute
AnnotationCompleter = com.sun.tools.javac.jvm.ClassReader$AnnotationCompleter of com.sun.tools.javac.jvm.ClassReader
CompoundAnnotationProxy = com.sun.tools.javac.jvm.ClassReader$CompoundAnnotationProxy of com.sun.tools.javac.jvm.ClassReader
TypeAnnotationCompleter = com.sun.tools.javac.jvm.ClassReader$TypeAnnotationCompleter of com.sun.tools.javac.jvm.ClassReader
TypeAnnotationProxy = com.sun.tools.javac.jvm.ClassReader$TypeAnnotationProxy of com.sun.tools.javac.jvm.ClassReader