public class com.sun.source.util.TreePath implements java.lang.Iterable<com.sun.source.tree.Tree>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.source.util.TreePath
super_class: java.lang.Object
{
private com.sun.source.tree.CompilationUnitTree compilationUnit;
descriptor: Lcom/sun/source/tree/CompilationUnitTree;
flags: (0x0002) ACC_PRIVATE
private com.sun.source.tree.Tree leaf;
descriptor: Lcom/sun/source/tree/Tree;
flags: (0x0002) ACC_PRIVATE
private com.sun.source.util.TreePath parent;
descriptor: Lcom/sun/source/util/TreePath;
flags: (0x0002) ACC_PRIVATE
public static com.sun.source.util.TreePath getPath(com.sun.source.tree.CompilationUnitTree, com.sun.source.tree.Tree);
descriptor: (Lcom/sun/source/tree/CompilationUnitTree;Lcom/sun/source/tree/Tree;)Lcom/sun/source/util/TreePath;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new com.sun.source.util.TreePath
dup
aload 0
invokespecial com.sun.source.util.TreePath.<init>:(Lcom/sun/source/tree/CompilationUnitTree;)V
aload 1
invokestatic com.sun.source.util.TreePath.getPath:(Lcom/sun/source/util/TreePath;Lcom/sun/source/tree/Tree;)Lcom/sun/source/util/TreePath;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 unit Lcom/sun/source/tree/CompilationUnitTree;
0 1 1 target Lcom/sun/source/tree/Tree;
MethodParameters:
Name Flags
unit
target
public static com.sun.source.util.TreePath getPath(com.sun.source.util.TreePath, com.sun.source.tree.Tree);
descriptor: (Lcom/sun/source/util/TreePath;Lcom/sun/source/tree/Tree;)Lcom/sun/source/util/TreePath;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 0
invokevirtual com.sun.source.util.TreePath.getLeaf:()Lcom/sun/source/tree/Tree;
aload 1
if_acmpne 4
3: aload 0
areturn
4: StackMap locals:
StackMap stack:
new com.sun.source.util.TreePath$1PathFinder
dup
invokespecial com.sun.source.util.TreePath$1PathFinder.<init>:()V
aload 0
aload 1
invokevirtual com.sun.source.util.TreePath$1PathFinder.scan:(Lcom/sun/source/util/TreePath;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: goto 8
StackMap locals:
StackMap stack: com.sun.source.util.TreePath$1Result
6: astore 2
start local 2 7: aload 2
getfield com.sun.source.util.TreePath$1Result.path:Lcom/sun/source/util/TreePath;
areturn
end local 2 8: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 path Lcom/sun/source/util/TreePath;
0 9 1 target Lcom/sun/source/tree/Tree;
7 8 2 result Lcom/sun/source/util/TreePath$1Result;
Exception table:
from to target type
4 5 6 Class com.sun.source.util.TreePath$1Result
MethodParameters:
Name Flags
path
target
public void <init>(com.sun.source.tree.CompilationUnitTree);
descriptor: (Lcom/sun/source/tree/CompilationUnitTree;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aconst_null
aload 1
invokespecial com.sun.source.util.TreePath.<init>:(Lcom/sun/source/util/TreePath;Lcom/sun/source/tree/Tree;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/source/util/TreePath;
0 2 1 node Lcom/sun/source/tree/CompilationUnitTree;
MethodParameters:
Name Flags
node
public void <init>(com.sun.source.util.TreePath, com.sun.source.tree.Tree);
descriptor: (Lcom/sun/source/util/TreePath;Lcom/sun/source/tree/Tree;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 2
invokeinterface com.sun.source.tree.Tree.getKind:()Lcom/sun/source/tree/Tree$Kind;
getstatic com.sun.source.tree.Tree$Kind.COMPILATION_UNIT:Lcom/sun/source/tree/Tree$Kind;
if_acmpne 5
2: aload 0
aload 2
checkcast com.sun.source.tree.CompilationUnitTree
putfield com.sun.source.util.TreePath.compilationUnit:Lcom/sun/source/tree/CompilationUnitTree;
3: aload 0
aconst_null
putfield com.sun.source.util.TreePath.parent:Lcom/sun/source/util/TreePath;
4: goto 7
5: StackMap locals: com.sun.source.util.TreePath com.sun.source.util.TreePath com.sun.source.tree.Tree
StackMap stack:
aload 0
aload 1
getfield com.sun.source.util.TreePath.compilationUnit:Lcom/sun/source/tree/CompilationUnitTree;
putfield com.sun.source.util.TreePath.compilationUnit:Lcom/sun/source/tree/CompilationUnitTree;
6: aload 0
aload 1
putfield com.sun.source.util.TreePath.parent:Lcom/sun/source/util/TreePath;
7: StackMap locals:
StackMap stack:
aload 0
aload 2
putfield com.sun.source.util.TreePath.leaf:Lcom/sun/source/tree/Tree;
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/source/util/TreePath;
0 9 1 path Lcom/sun/source/util/TreePath;
0 9 2 tree Lcom/sun/source/tree/Tree;
MethodParameters:
Name Flags
path
tree
public com.sun.source.tree.CompilationUnitTree getCompilationUnit();
descriptor: ()Lcom/sun/source/tree/CompilationUnitTree;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.source.util.TreePath.compilationUnit:Lcom/sun/source/tree/CompilationUnitTree;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/source/util/TreePath;
public com.sun.source.tree.Tree getLeaf();
descriptor: ()Lcom/sun/source/tree/Tree;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.source.util.TreePath.leaf:Lcom/sun/source/tree/Tree;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/source/util/TreePath;
public com.sun.source.util.TreePath getParentPath();
descriptor: ()Lcom/sun/source/util/TreePath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.source.util.TreePath.parent:Lcom/sun/source/util/TreePath;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/source/util/TreePath;
public java.util.Iterator<com.sun.source.tree.Tree> iterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.sun.source.util.TreePath$1
dup
aload 0
invokespecial com.sun.source.util.TreePath$1.<init>:(Lcom/sun/source/util/TreePath;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/source/util/TreePath;
Signature: ()Ljava/util/Iterator<Lcom/sun/source/tree/Tree;>;
}
Signature: Ljava/lang/Object;Ljava/lang/Iterable<Lcom/sun/source/tree/Tree;>;
SourceFile: "TreePath.java"
NestMembers:
com.sun.source.util.TreePath$1 com.sun.source.util.TreePath$1PathFinder com.sun.source.util.TreePath$1Result
InnerClasses:
public final Kind = com.sun.source.tree.Tree$Kind of com.sun.source.tree.Tree
com.sun.source.util.TreePath$1
PathFinder = com.sun.source.util.TreePath$1PathFinder
Result = com.sun.source.util.TreePath$1Result