class com.sun.tools.javac.comp.Annotate$TypeAnnotate extends com.sun.tools.javac.tree.TreeScanner
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.comp.Annotate$TypeAnnotate
super_class: com.sun.tools.javac.tree.TreeScanner
{
private final com.sun.tools.javac.comp.Env<com.sun.tools.javac.comp.AttrContext> env;
descriptor: Lcom/sun/tools/javac/comp/Env;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
private final com.sun.tools.javac.code.Symbol sym;
descriptor: Lcom/sun/tools/javac/code/Symbol;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition deferPos;
descriptor: Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
flags: (0x0002) ACC_PRIVATE
final com.sun.tools.javac.comp.Annotate this$0;
descriptor: Lcom/sun/tools/javac/comp/Annotate;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(com.sun.tools.javac.comp.Env<com.sun.tools.javac.comp.AttrContext>, com.sun.tools.javac.code.Symbol, com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition);
descriptor: (Lcom/sun/tools/javac/comp/Annotate;Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=5
start local 0 start local 2 start local 3 start local 4 0: aload 0
aload 1
putfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.this$0:Lcom/sun/tools/javac/comp/Annotate;
aload 0
invokespecial com.sun.tools.javac.tree.TreeScanner.<init>:()V
1: aload 0
aload 2
putfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.env:Lcom/sun/tools/javac/comp/Env;
2: aload 0
aload 3
putfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.sym:Lcom/sun/tools/javac/code/Symbol;
3: aload 0
aload 4
putfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.deferPos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
4: return
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/comp/Annotate$TypeAnnotate;
0 5 2 env Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
0 5 3 sym Lcom/sun/tools/javac/code/Symbol;
0 5 4 deferPos Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
Signature: (Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;)V
MethodParameters:
Name Flags
this$0 final
env
sym
deferPos
public void visitAnnotatedType(com.sun.tools.javac.tree.JCTree$JCAnnotatedType);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCAnnotatedType;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.this$0:Lcom/sun/tools/javac/comp/Annotate;
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCAnnotatedType.annotations:Lcom/sun/tools/javac/util/List;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.env:Lcom/sun/tools/javac/comp/Env;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.sym:Lcom/sun/tools/javac/code/Symbol;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.deferPos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
iconst_0
invokevirtual com.sun.tools.javac.comp.Annotate.enterTypeAnnotations:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Z)V
1: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCAnnotatedType.underlyingType:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Annotate$TypeAnnotate;
0 3 1 tree Lcom/sun/tools/javac/tree/JCTree$JCAnnotatedType;
MethodParameters:
Name Flags
tree
public void visitTypeParameter(com.sun.tools.javac.tree.JCTree$JCTypeParameter);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCTypeParameter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.this$0:Lcom/sun/tools/javac/comp/Annotate;
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCTypeParameter.annotations:Lcom/sun/tools/javac/util/List;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.env:Lcom/sun/tools/javac/comp/Env;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.sym:Lcom/sun/tools/javac/code/Symbol;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.deferPos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
iconst_1
invokevirtual com.sun.tools.javac.comp.Annotate.enterTypeAnnotations:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Z)V
1: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCTypeParameter.bounds:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/util/List;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Annotate$TypeAnnotate;
0 3 1 tree Lcom/sun/tools/javac/tree/JCTree$JCTypeParameter;
MethodParameters:
Name Flags
tree
public void visitNewArray(com.sun.tools.javac.tree.JCTree$JCNewArray);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCNewArray;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.this$0:Lcom/sun/tools/javac/comp/Annotate;
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCNewArray.annotations:Lcom/sun/tools/javac/util/List;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.env:Lcom/sun/tools/javac/comp/Env;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.sym:Lcom/sun/tools/javac/code/Symbol;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.deferPos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
iconst_0
invokevirtual com.sun.tools.javac.comp.Annotate.enterTypeAnnotations:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Z)V
1: aload 1
getfield com.sun.tools.javac.tree.JCTree$JCNewArray.dimAnnotations:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: com.sun.tools.javac.comp.Annotate$TypeAnnotate com.sun.tools.javac.tree.JCTree$JCNewArray top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.util.List
astore 2
start local 2 3: aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.this$0:Lcom/sun/tools/javac/comp/Annotate;
aload 2
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.env:Lcom/sun/tools/javac/comp/Env;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.sym:Lcom/sun/tools/javac/code/Symbol;
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.deferPos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
iconst_0
invokevirtual com.sun.tools.javac.comp.Annotate.enterTypeAnnotations:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Z)V
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCNewArray.elemtype:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
6: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCNewArray.elems:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/util/List;)V
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/comp/Annotate$TypeAnnotate;
0 8 1 tree Lcom/sun/tools/javac/tree/JCTree$JCNewArray;
3 4 2 dimAnnos Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCAnnotation;>;
MethodParameters:
Name Flags
tree
public void visitMethodDef(com.sun.tools.javac.tree.JCTree$JCMethodDecl);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCMethodDecl;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCMethodDecl.mods:Lcom/sun/tools/javac/tree/JCTree$JCModifiers;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
1: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCMethodDecl.restype:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
2: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCMethodDecl.typarams:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/util/List;)V
3: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCMethodDecl.recvparam:Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
4: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCMethodDecl.params:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/util/List;)V
5: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCMethodDecl.thrown:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/util/List;)V
6: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCMethodDecl.defaultValue:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/javac/comp/Annotate$TypeAnnotate;
0 8 1 tree Lcom/sun/tools/javac/tree/JCTree$JCMethodDecl;
MethodParameters:
Name Flags
tree
public void visitVarDef(com.sun.tools.javac.tree.JCTree$JCVariableDecl);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.deferPos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
astore 2
start local 2 1: aload 0
aload 1
invokevirtual com.sun.tools.javac.tree.JCTree$JCVariableDecl.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
putfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.deferPos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
2: aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.sym:Lcom/sun/tools/javac/code/Symbol;
ifnull 5
aload 0
getfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.sym:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.VAR:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 5
3: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.mods:Lcom/sun/tools/javac/tree/JCTree$JCModifiers;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
4: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.vartype:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
5: StackMap locals: com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition
StackMap stack:
aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.init:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
6: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
7: astore 3
8: aload 0
aload 2
putfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.deferPos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
9: aload 3
athrow
10: StackMap locals:
StackMap stack:
aload 0
aload 2
putfield com.sun.tools.javac.comp.Annotate$TypeAnnotate.deferPos:Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
11: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/javac/comp/Annotate$TypeAnnotate;
0 12 1 tree Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;
1 12 2 prevPos Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
Exception table:
from to target type
2 7 7 any
MethodParameters:
Name Flags
tree
public void visitBindingPattern(com.sun.tools.javac.tree.JCTree$JCBindingPattern);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCBindingPattern;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/Annotate$TypeAnnotate;
0 1 1 tree Lcom/sun/tools/javac/tree/JCTree$JCBindingPattern;
MethodParameters:
Name Flags
tree
public void visitClassDef(com.sun.tools.javac.tree.JCTree$JCClassDecl);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/Annotate$TypeAnnotate;
0 1 1 tree Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
MethodParameters:
Name Flags
tree
public void visitNewClass(com.sun.tools.javac.tree.JCTree$JCNewClass);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCNewClass;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCNewClass.encl:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
1: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCNewClass.typeargs:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/util/List;)V
2: aload 1
getfield com.sun.tools.javac.tree.JCTree$JCNewClass.def:Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
ifnonnull 4
3: aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCNewClass.clazz:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/tree/JCTree;)V
4: StackMap locals:
StackMap stack:
aload 0
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCNewClass.args:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.comp.Annotate$TypeAnnotate.scan:(Lcom/sun/tools/javac/util/List;)V
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/comp/Annotate$TypeAnnotate;
0 6 1 tree Lcom/sun/tools/javac/tree/JCTree$JCNewClass;
MethodParameters:
Name Flags
tree
}
SourceFile: "Annotate.java"
NestHost: com.sun.tools.javac.comp.Annotate
InnerClasses:
public final Kind = com.sun.tools.javac.code.Kinds$Kind of com.sun.tools.javac.code.Kinds
private TypeAnnotate = com.sun.tools.javac.comp.Annotate$TypeAnnotate of com.sun.tools.javac.comp.Annotate
public JCAnnotatedType = com.sun.tools.javac.tree.JCTree$JCAnnotatedType of com.sun.tools.javac.tree.JCTree
public JCAnnotation = com.sun.tools.javac.tree.JCTree$JCAnnotation of com.sun.tools.javac.tree.JCTree
public JCBindingPattern = com.sun.tools.javac.tree.JCTree$JCBindingPattern of com.sun.tools.javac.tree.JCTree
public JCClassDecl = com.sun.tools.javac.tree.JCTree$JCClassDecl of com.sun.tools.javac.tree.JCTree
public JCMethodDecl = com.sun.tools.javac.tree.JCTree$JCMethodDecl of com.sun.tools.javac.tree.JCTree
public JCNewArray = com.sun.tools.javac.tree.JCTree$JCNewArray of com.sun.tools.javac.tree.JCTree
public JCNewClass = com.sun.tools.javac.tree.JCTree$JCNewClass of com.sun.tools.javac.tree.JCTree
public JCTypeParameter = com.sun.tools.javac.tree.JCTree$JCTypeParameter of com.sun.tools.javac.tree.JCTree
public JCVariableDecl = com.sun.tools.javac.tree.JCTree$JCVariableDecl of com.sun.tools.javac.tree.JCTree
public abstract DiagnosticPosition = com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition of com.sun.tools.javac.util.JCDiagnostic