class com.google.common.graph.Traverser$Traversal$4 extends com.google.common.collect.AbstractIterator<N>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.google.common.graph.Traverser$Traversal$4
super_class: com.google.common.collect.AbstractIterator
{
final com.google.common.graph.Traverser$Traversal this$1;
descriptor: Lcom/google/common/graph/Traverser$Traversal;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final java.util.Deque val$horizon;
descriptor: Ljava/util/Deque;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.util.Deque val$ancestorStack;
descriptor: Ljava/util/Deque;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(com.google.common.graph.Traverser$Traversal, java.util.Deque, java.util.Deque);
descriptor: (Lcom/google/common/graph/Traverser$Traversal;Ljava/util/Deque;Ljava/util/Deque;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 0: aload 0
aload 1
putfield com.google.common.graph.Traverser$Traversal$4.this$1:Lcom/google/common/graph/Traverser$Traversal;
aload 0
aload 2
putfield com.google.common.graph.Traverser$Traversal$4.val$horizon:Ljava/util/Deque;
aload 0
aload 3
putfield com.google.common.graph.Traverser$Traversal$4.val$ancestorStack:Ljava/util/Deque;
aload 0
invokespecial com.google.common.collect.AbstractIterator.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/graph/Traverser$Traversal$4;
MethodParameters:
Name Flags
this$0 final
val$horizon final
val$ancestorStack final
protected N computeNext();
descriptor: ()Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield com.google.common.graph.Traverser$Traversal$4.this$1:Lcom/google/common/graph/Traverser$Traversal;
aload 0
getfield com.google.common.graph.Traverser$Traversal$4.val$horizon:Ljava/util/Deque;
invokevirtual com.google.common.graph.Traverser$Traversal.visitNext:(Ljava/util/Deque;)Ljava/lang/Object;
astore 1
start local 1 1: goto 8
2: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield com.google.common.graph.Traverser$Traversal$4.this$1:Lcom/google/common/graph/Traverser$Traversal;
getfield com.google.common.graph.Traverser$Traversal.successorFunction:Lcom/google/common/graph/SuccessorsFunction;
aload 1
invokeinterface com.google.common.graph.SuccessorsFunction.successors:(Ljava/lang/Object;)Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 2
start local 2 3: aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
4: aload 1
areturn
5: StackMap locals: java.util.Iterator
StackMap stack:
aload 0
getfield com.google.common.graph.Traverser$Traversal$4.val$horizon:Ljava/util/Deque;
aload 2
invokeinterface java.util.Deque.addFirst:(Ljava/lang/Object;)V
6: aload 0
getfield com.google.common.graph.Traverser$Traversal$4.val$ancestorStack:Ljava/util/Deque;
aload 1
invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
end local 2 7: aload 0
getfield com.google.common.graph.Traverser$Traversal$4.this$1:Lcom/google/common/graph/Traverser$Traversal;
aload 0
getfield com.google.common.graph.Traverser$Traversal$4.val$horizon:Ljava/util/Deque;
invokevirtual com.google.common.graph.Traverser$Traversal.visitNext:(Ljava/util/Deque;)Ljava/lang/Object;
astore 1
StackMap locals:
StackMap stack:
8: aload 1
ifnonnull 2
end local 1 9: aload 0
getfield com.google.common.graph.Traverser$Traversal$4.val$ancestorStack:Ljava/util/Deque;
invokeinterface java.util.Deque.isEmpty:()Z
ifeq 10
aload 0
invokevirtual com.google.common.graph.Traverser$Traversal$4.endOfData:()Ljava/lang/Object;
goto 11
StackMap locals:
StackMap stack:
10: aload 0
getfield com.google.common.graph.Traverser$Traversal$4.val$ancestorStack:Ljava/util/Deque;
invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
11: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/google/common/graph/Traverser$Traversal$4;
1 9 1 next TN;
3 7 2 successors Ljava/util/Iterator<+TN;>;
Signature: ()TN;
}
Signature: Lcom/google/common/collect/AbstractIterator<TN;>;
SourceFile: "Traverser.java"
EnclosingMethod: com.google.common.graph.Traverser$Traversal.postOrder:(Ljava/util/Iterator;)Ljava/util/Iterator;
NestHost: com.google.common.graph.Traverser
InnerClasses:
private abstract Traversal = com.google.common.graph.Traverser$Traversal of com.google.common.graph.Traverser
com.google.common.graph.Traverser$Traversal$4