class jdk.jshell.ExpressionToTypeInfo$2 extends com.sun.source.util.TreeScanner<java.lang.Void, java.lang.Void>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.jshell.ExpressionToTypeInfo$2
super_class: com.sun.source.util.TreeScanner
{
java.util.Set<javax.lang.model.element.VariableElement> declaredLocalVars;
descriptor: Ljava/util/Set;
flags: (0x0000)
Signature: Ljava/util/Set<Ljavax/lang/model/element/VariableElement;>;
private final jdk.jshell.TaskFactory$AnalyzeTask val$at;
descriptor: Ljdk/jshell/TaskFactory$AnalyzeTask;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final com.sun.source.tree.CompilationUnitTree val$topLevel;
descriptor: Lcom/sun/source/tree/CompilationUnitTree;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.util.Set val$capturedVars;
descriptor: Ljava/util/Set;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(jdk.jshell.TaskFactory$AnalyzeTask, com.sun.source.tree.CompilationUnitTree, java.util.Set);
descriptor: (Ljdk/jshell/TaskFactory$AnalyzeTask;Lcom/sun/source/tree/CompilationUnitTree;Ljava/util/Set;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 0: aload 0
aload 1
putfield jdk.jshell.ExpressionToTypeInfo$2.val$at:Ljdk/jshell/TaskFactory$AnalyzeTask;
aload 0
aload 2
putfield jdk.jshell.ExpressionToTypeInfo$2.val$topLevel:Lcom/sun/source/tree/CompilationUnitTree;
aload 0
aload 3
putfield jdk.jshell.ExpressionToTypeInfo$2.val$capturedVars:Ljava/util/Set;
aload 0
invokespecial com.sun.source.util.TreeScanner.<init>:()V
1: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield jdk.jshell.ExpressionToTypeInfo$2.declaredLocalVars:Ljava/util/Set;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/jshell/ExpressionToTypeInfo$2;
MethodParameters:
Name Flags
val$at final
val$topLevel final
val$capturedVars final
public java.lang.Void visitVariable(com.sun.source.tree.VariableTree, java.lang.Void);
descriptor: (Lcom/sun/source/tree/VariableTree;Ljava/lang/Void;)Ljava/lang/Void;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.jshell.ExpressionToTypeInfo$2.val$at:Ljdk/jshell/TaskFactory$AnalyzeTask;
invokevirtual jdk.jshell.TaskFactory$AnalyzeTask.trees:()Lcom/sun/source/util/Trees;
1: aload 0
getfield jdk.jshell.ExpressionToTypeInfo$2.val$topLevel:Lcom/sun/source/tree/CompilationUnitTree;
aload 1
invokevirtual com.sun.source.util.Trees.getPath:(Lcom/sun/source/tree/CompilationUnitTree;Lcom/sun/source/tree/Tree;)Lcom/sun/source/util/TreePath;
2: astore 3
start local 3 3: aload 0
getfield jdk.jshell.ExpressionToTypeInfo$2.declaredLocalVars:Ljava/util/Set;
aload 0
getfield jdk.jshell.ExpressionToTypeInfo$2.val$at:Ljdk/jshell/TaskFactory$AnalyzeTask;
invokevirtual jdk.jshell.TaskFactory$AnalyzeTask.trees:()Lcom/sun/source/util/Trees;
aload 3
invokevirtual com.sun.source.util.Trees.getElement:(Lcom/sun/source/util/TreePath;)Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.VariableElement
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
4: aload 0
aload 1
aload 2
invokespecial com.sun.source.util.TreeScanner.visitVariable:(Lcom/sun/source/tree/VariableTree;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Void
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/jshell/ExpressionToTypeInfo$2;
0 5 1 node Lcom/sun/source/tree/VariableTree;
0 5 2 p Ljava/lang/Void;
3 5 3 currentPath Lcom/sun/source/util/TreePath;
MethodParameters:
Name Flags
node
p
public java.lang.Void visitIdentifier(com.sun.source.tree.IdentifierTree, java.lang.Void);
descriptor: (Lcom/sun/source/tree/IdentifierTree;Ljava/lang/Void;)Ljava/lang/Void;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.jshell.ExpressionToTypeInfo$2.val$at:Ljdk/jshell/TaskFactory$AnalyzeTask;
invokevirtual jdk.jshell.TaskFactory$AnalyzeTask.trees:()Lcom/sun/source/util/Trees;
1: aload 0
getfield jdk.jshell.ExpressionToTypeInfo$2.val$topLevel:Lcom/sun/source/tree/CompilationUnitTree;
aload 1
invokevirtual com.sun.source.util.Trees.getPath:(Lcom/sun/source/tree/CompilationUnitTree;Lcom/sun/source/tree/Tree;)Lcom/sun/source/util/TreePath;
2: astore 3
start local 3 3: aload 0
getfield jdk.jshell.ExpressionToTypeInfo$2.val$at:Ljdk/jshell/TaskFactory$AnalyzeTask;
invokevirtual jdk.jshell.TaskFactory$AnalyzeTask.trees:()Lcom/sun/source/util/Trees;
aload 3
invokevirtual com.sun.source.util.Trees.getElement:(Lcom/sun/source/util/TreePath;)Ljavax/lang/model/element/Element;
astore 4
start local 4 4: aload 4
ifnull 8
5: getstatic jdk.jshell.ExpressionToTypeInfo.LOCAL_VARIABLES:Ljava/util/Set;
aload 4
invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 8
6: aload 0
getfield jdk.jshell.ExpressionToTypeInfo$2.declaredLocalVars:Ljava/util/Set;
aload 4
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 8
7: aload 0
getfield jdk.jshell.ExpressionToTypeInfo$2.val$capturedVars:Ljava/util/Set;
aload 4
checkcast javax.lang.model.element.VariableElement
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
8: StackMap locals: com.sun.source.util.TreePath javax.lang.model.element.Element
StackMap stack:
aload 0
aload 1
aload 2
invokespecial com.sun.source.util.TreeScanner.visitIdentifier:(Lcom/sun/source/tree/IdentifierTree;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Void
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/jshell/ExpressionToTypeInfo$2;
0 9 1 node Lcom/sun/source/tree/IdentifierTree;
0 9 2 p Ljava/lang/Void;
3 9 3 currentPath Lcom/sun/source/util/TreePath;
4 9 4 el Ljavax/lang/model/element/Element;
MethodParameters:
Name Flags
node
p
public java.lang.Object visitVariable(com.sun.source.tree.VariableTree, java.lang.Object);
descriptor: (Lcom/sun/source/tree/VariableTree;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast java.lang.Void
invokevirtual jdk.jshell.ExpressionToTypeInfo$2.visitVariable:(Lcom/sun/source/tree/VariableTree;Ljava/lang/Void;)Ljava/lang/Void;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object visitIdentifier(com.sun.source.tree.IdentifierTree, java.lang.Object);
descriptor: (Lcom/sun/source/tree/IdentifierTree;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast java.lang.Void
invokevirtual jdk.jshell.ExpressionToTypeInfo$2.visitIdentifier:(Lcom/sun/source/tree/IdentifierTree;Ljava/lang/Void;)Ljava/lang/Void;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lcom/sun/source/util/TreeScanner<Ljava/lang/Void;Ljava/lang/Void;>;
SourceFile: "ExpressionToTypeInfo.java"
EnclosingMethod: jdk.jshell.ExpressionToTypeInfo.capturedVariables:(Ljdk/jshell/TaskFactory$AnalyzeTask;Lcom/sun/source/tree/CompilationUnitTree;Lcom/sun/source/tree/Tree;)Ljava/util/Set;
NestHost: jdk.jshell.ExpressionToTypeInfo
InnerClasses:
jdk.jshell.ExpressionToTypeInfo$2
AnalyzeTask = jdk.jshell.TaskFactory$AnalyzeTask of jdk.jshell.TaskFactory