public class org.antlr.v4.runtime.tree.IterativeParseTreeWalker extends org.antlr.v4.runtime.tree.ParseTreeWalker
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.antlr.v4.runtime.tree.IterativeParseTreeWalker
super_class: org.antlr.v4.runtime.tree.ParseTreeWalker
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.antlr.v4.runtime.tree.ParseTreeWalker.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/antlr/v4/runtime/tree/IterativeParseTreeWalker;
public void walk(org.antlr.v4.runtime.tree.ParseTreeListener, org.antlr.v4.runtime.tree.ParseTree);
descriptor: (Lorg/antlr/v4/runtime/tree/ParseTreeListener;Lorg/antlr/v4/runtime/tree/ParseTree;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: new java.util.ArrayDeque
dup
invokespecial java.util.ArrayDeque.<init>:()V
astore 3
start local 3 1: new org.antlr.v4.runtime.misc.IntegerStack
dup
invokespecial org.antlr.v4.runtime.misc.IntegerStack.<init>:()V
astore 4
start local 4 2: aload 2
astore 5
start local 5 3: iconst_0
istore 6
start local 6 4: goto 31
5: StackMap locals: org.antlr.v4.runtime.tree.IterativeParseTreeWalker org.antlr.v4.runtime.tree.ParseTreeListener org.antlr.v4.runtime.tree.ParseTree java.util.Deque org.antlr.v4.runtime.misc.IntegerStack org.antlr.v4.runtime.tree.ParseTree int
StackMap stack:
aload 5
instanceof org.antlr.v4.runtime.tree.ErrorNode
ifeq 8
6: aload 1
aload 5
checkcast org.antlr.v4.runtime.tree.ErrorNode
invokeinterface org.antlr.v4.runtime.tree.ParseTreeListener.visitErrorNode:(Lorg/antlr/v4/runtime/tree/ErrorNode;)V
7: goto 13
8: StackMap locals:
StackMap stack:
aload 5
instanceof org.antlr.v4.runtime.tree.TerminalNode
ifeq 11
9: aload 1
aload 5
checkcast org.antlr.v4.runtime.tree.TerminalNode
invokeinterface org.antlr.v4.runtime.tree.ParseTreeListener.visitTerminal:(Lorg/antlr/v4/runtime/tree/TerminalNode;)V
10: goto 13
11: StackMap locals:
StackMap stack:
aload 5
checkcast org.antlr.v4.runtime.tree.RuleNode
astore 7
start local 7 12: aload 0
aload 1
aload 7
invokevirtual org.antlr.v4.runtime.tree.IterativeParseTreeWalker.enterRule:(Lorg/antlr/v4/runtime/tree/ParseTreeListener;Lorg/antlr/v4/runtime/tree/RuleNode;)V
end local 7 13: StackMap locals:
StackMap stack:
aload 5
invokeinterface org.antlr.v4.runtime.tree.ParseTree.getChildCount:()I
ifle 19
14: aload 3
aload 5
invokeinterface java.util.Deque.push:(Ljava/lang/Object;)V
15: aload 4
iload 6
invokevirtual org.antlr.v4.runtime.misc.IntegerStack.push:(I)V
16: iconst_0
istore 6
17: aload 5
iconst_0
invokeinterface org.antlr.v4.runtime.tree.ParseTree.getChild:(I)Lorg/antlr/v4/runtime/tree/ParseTree;
astore 5
18: goto 31
19: StackMap locals:
StackMap stack:
aload 5
instanceof org.antlr.v4.runtime.tree.RuleNode
ifeq 21
20: aload 0
aload 1
aload 5
checkcast org.antlr.v4.runtime.tree.RuleNode
invokevirtual org.antlr.v4.runtime.tree.IterativeParseTreeWalker.exitRule:(Lorg/antlr/v4/runtime/tree/ParseTreeListener;Lorg/antlr/v4/runtime/tree/RuleNode;)V
21: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Deque.isEmpty:()Z
ifeq 25
22: aconst_null
astore 5
23: iconst_0
istore 6
24: goto 31
25: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Deque.peek:()Ljava/lang/Object;
checkcast org.antlr.v4.runtime.tree.ParseTree
iinc 6 1
iload 6
invokeinterface org.antlr.v4.runtime.tree.ParseTree.getChild:(I)Lorg/antlr/v4/runtime/tree/ParseTree;
astore 5
26: aload 5
ifnull 28
27: goto 31
28: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
checkcast org.antlr.v4.runtime.tree.ParseTree
astore 5
29: aload 4
invokevirtual org.antlr.v4.runtime.misc.IntegerStack.pop:()I
istore 6
30: aload 5
ifnonnull 19
31: StackMap locals:
StackMap stack:
aload 5
ifnonnull 5
32: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lorg/antlr/v4/runtime/tree/IterativeParseTreeWalker;
0 33 1 listener Lorg/antlr/v4/runtime/tree/ParseTreeListener;
0 33 2 t Lorg/antlr/v4/runtime/tree/ParseTree;
1 33 3 nodeStack Ljava/util/Deque<Lorg/antlr/v4/runtime/tree/ParseTree;>;
2 33 4 indexStack Lorg/antlr/v4/runtime/misc/IntegerStack;
3 33 5 currentNode Lorg/antlr/v4/runtime/tree/ParseTree;
4 33 6 currentIndex I
12 13 7 r Lorg/antlr/v4/runtime/tree/RuleNode;
MethodParameters:
Name Flags
listener
t
}
SourceFile: "IterativeParseTreeWalker.java"