public class org.antlr.analysis.NFAToDFAConverter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.antlr.analysis.NFAToDFAConverter
super_class: java.lang.Object
{
protected java.util.List<org.antlr.analysis.DFAState> work;
descriptor: Ljava/util/List;
flags: (0x0004) ACC_PROTECTED
Signature: Ljava/util/List<Lorg/antlr/analysis/DFAState;>;
protected org.antlr.analysis.NFAContext[] contextTrees;
descriptor: [Lorg/antlr/analysis/NFAContext;
flags: (0x0004) ACC_PROTECTED
protected org.antlr.analysis.DFA dfa;
descriptor: Lorg/antlr/analysis/DFA;
flags: (0x0004) ACC_PROTECTED
public static boolean debug;
descriptor: Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
public static boolean SINGLE_THREADED_NFA_CONVERSION;
descriptor: Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
protected boolean computingStartState;
descriptor: Z
flags: (0x0004) ACC_PROTECTED
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_0
putstatic org.antlr.analysis.NFAToDFAConverter.debug:Z
1: iconst_1
putstatic org.antlr.analysis.NFAToDFAConverter.SINGLE_THREADED_NFA_CONVERSION:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.antlr.analysis.DFA);
descriptor: (Lorg/antlr/analysis/DFA;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield org.antlr.analysis.NFAToDFAConverter.work:Ljava/util/List;
2: aload 0
iconst_0
putfield org.antlr.analysis.NFAToDFAConverter.computingStartState:Z
3: aload 0
aload 1
putfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
4: aload 1
invokevirtual org.antlr.analysis.DFA.getNumberOfAlts:()I
istore 2
start local 2 5: aload 0
iload 2
invokevirtual org.antlr.analysis.NFAToDFAConverter.initContextTrees:(I)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 7 1 dfa Lorg/antlr/analysis/DFA;
5 7 2 nAlts I
MethodParameters:
Name Flags
dfa
public void convert();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 0
invokevirtual org.antlr.analysis.NFAToDFAConverter.computeStartState:()Lorg/antlr/analysis/DFAState;
putfield org.antlr.analysis.DFA.startState:Lorg/antlr/analysis/DFAState;
1: goto 17
2: StackMap locals:
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.work:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.DFAState
astore 1
start local 1 3: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
getfield org.antlr.analysis.NFA.grammar:Lorg/antlr/tool/Grammar;
getfield org.antlr.tool.Grammar.composite:Lorg/antlr/tool/CompositeGrammar;
getfield org.antlr.tool.CompositeGrammar.watchNFAConversion:Z
ifeq 7
4: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "convert DFA state "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield org.antlr.analysis.DFAState.stateNumber:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
5: ldc " ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
invokevirtual org.antlr.misc.OrderedHashSet.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " nfa states)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
7: StackMap locals: org.antlr.analysis.DFAState
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.getUserMaxLookahead:()I
istore 2
start local 2 8: iload 2
ifle 15
iload 2
aload 1
invokevirtual org.antlr.analysis.DFAState.getLookaheadDepth:()I
if_icmpne 15
9: aload 0
aload 1
invokevirtual org.antlr.analysis.NFAToDFAConverter.resolveNonDeterminisms:(Lorg/antlr/analysis/DFAState;)V
10: aload 1
invokevirtual org.antlr.analysis.DFAState.isResolvedWithPredicates:()Z
ifeq 13
11: aload 0
aload 1
invokevirtual org.antlr.analysis.NFAToDFAConverter.addPredicateTransitions:(Lorg/antlr/analysis/DFAState;)V
12: goto 16
13: StackMap locals: int
StackMap stack:
aload 1
iconst_1
invokevirtual org.antlr.analysis.DFAState.setAcceptState:(Z)V
14: goto 16
15: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.antlr.analysis.NFAToDFAConverter.findNewDFAStatesAndAddDFATransitions:(Lorg/antlr/analysis/DFAState;)V
16: StackMap locals:
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.work:Ljava/util/List;
iconst_0
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
pop
end local 2 end local 1 17: StackMap locals:
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.work:Ljava/util/List;
invokeinterface java.util.List.size:()I
ifle 19
18: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
getfield org.antlr.analysis.NFA.grammar:Lorg/antlr/tool/Grammar;
invokevirtual org.antlr.tool.Grammar.NFAToDFAConversionExternallyAborted:()Z
ifeq 2
19: StackMap locals:
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.findAllGatedSynPredsUsedInDFAAcceptStates:()V
20: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/antlr/analysis/NFAToDFAConverter;
3 17 1 d Lorg/antlr/analysis/DFAState;
8 17 2 k I
protected org.antlr.analysis.DFAState computeStartState();
descriptor: ()Lorg/antlr/analysis/DFAState;
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=7, args_size=1
start local 0 0: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.decisionNFAStartState:Lorg/antlr/analysis/NFAState;
astore 1
start local 1 1: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.newState:()Lorg/antlr/analysis/DFAState;
astore 2
start local 2 2: aload 0
iconst_1
putfield org.antlr.analysis.NFAToDFAConverter.computingStartState:Z
3: iconst_0
istore 3
start local 3 4: iconst_1
istore 4
start local 4 5: goto 34
6: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.NFAState org.antlr.analysis.DFAState int int
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.contextTrees:[Lorg/antlr/analysis/NFAContext;
iload 3
aaload
astore 5
start local 5 7: iload 3
ifne 22
8: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.getNFADecisionStartState:()Lorg/antlr/analysis/NFAState;
getfield org.antlr.analysis.NFAState.decisionStateType:I
iconst_1
if_icmpne 22
9: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
getfield org.antlr.analysis.NFA.grammar:Lorg/antlr/tool/Grammar;
10: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.decisionNFAStartState:Lorg/antlr/analysis/NFAState;
invokevirtual org.antlr.tool.Grammar.getNumberOfAltsForDecisionNFA:(Lorg/antlr/analysis/NFAState;)I
11: istore 6
start local 6 12: iload 6
istore 4
13: aload 0
aload 1
getfield org.antlr.analysis.NFAState.transition:[Lorg/antlr/analysis/Transition;
iconst_0
aaload
getfield org.antlr.analysis.Transition.target:Lorg/antlr/analysis/State;
checkcast org.antlr.analysis.NFAState
14: iload 4
15: aload 5
16: getstatic org.antlr.analysis.SemanticContext.EMPTY_SEMANTIC_CONTEXT:Lorg/antlr/analysis/SemanticContext;
17: aload 2
18: iconst_1
19: invokevirtual org.antlr.analysis.NFAToDFAConverter.closure:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/DFAState;Z)V
20: iconst_1
istore 4
end local 6 21: goto 30
22: StackMap locals: org.antlr.analysis.NFAContext
StackMap stack:
aload 0
aload 1
getfield org.antlr.analysis.NFAState.transition:[Lorg/antlr/analysis/Transition;
iconst_0
aaload
getfield org.antlr.analysis.Transition.target:Lorg/antlr/analysis/State;
checkcast org.antlr.analysis.NFAState
23: iload 4
24: aload 5
25: getstatic org.antlr.analysis.SemanticContext.EMPTY_SEMANTIC_CONTEXT:Lorg/antlr/analysis/SemanticContext;
26: aload 2
27: iconst_1
28: invokevirtual org.antlr.analysis.NFAToDFAConverter.closure:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/DFAState;Z)V
29: iinc 4 1
30: StackMap locals:
StackMap stack:
iinc 3 1
31: aload 1
getfield org.antlr.analysis.NFAState.transition:[Lorg/antlr/analysis/Transition;
iconst_1
aaload
ifnonnull 33
32: goto 35
33: StackMap locals:
StackMap stack:
aload 1
getfield org.antlr.analysis.NFAState.transition:[Lorg/antlr/analysis/Transition;
iconst_1
aaload
getfield org.antlr.analysis.Transition.target:Lorg/antlr/analysis/State;
checkcast org.antlr.analysis.NFAState
astore 1
end local 5 34: StackMap locals:
StackMap stack:
aload 1
ifnonnull 6
35: StackMap locals:
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 2
invokevirtual org.antlr.analysis.DFA.addState:(Lorg/antlr/analysis/DFAState;)Lorg/antlr/analysis/DFAState;
pop
36: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.work:Ljava/util/List;
aload 2
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
37: aload 0
iconst_0
putfield org.antlr.analysis.NFAToDFAConverter.computingStartState:Z
38: aload 2
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lorg/antlr/analysis/NFAToDFAConverter;
1 39 1 alt Lorg/antlr/analysis/NFAState;
2 39 2 startState Lorg/antlr/analysis/DFAState;
4 39 3 i I
5 39 4 altNum I
7 34 5 initialContext Lorg/antlr/analysis/NFAContext;
12 21 6 numAltsIncludingExitBranch I
protected void findNewDFAStatesAndAddDFATransitions(org.antlr.analysis.DFAState);
descriptor: (Lorg/antlr/analysis/DFAState;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=12, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.antlr.analysis.DFAState.getReachableLabels:()Lorg/antlr/misc/OrderedHashSet;
astore 2
start local 2 1: new org.antlr.analysis.Label
dup
bipush -2
invokespecial org.antlr.analysis.Label.<init>:(I)V
astore 3
start local 3 2: aload 2
ifnull 3
aload 2
aload 3
invokevirtual org.antlr.misc.OrderedHashSet.contains:(Ljava/lang/Object;)Z
ifeq 3
iconst_1
goto 4
StackMap locals: org.antlr.misc.OrderedHashSet org.antlr.analysis.Label
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: istore 4
start local 4 5: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.isGreedy:()Z
ifne 8
iload 4
ifeq 8
6: aload 0
aload 1
invokevirtual org.antlr.analysis.NFAToDFAConverter.convertToEOTAcceptState:(Lorg/antlr/analysis/DFAState;)V
7: return
8: StackMap locals: int
StackMap stack:
iconst_0
istore 5
start local 5 9: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 6
start local 6 10: iconst_0
istore 7
start local 7 11: aload 2
ifnull 13
12: aload 2
invokevirtual org.antlr.misc.OrderedHashSet.size:()I
istore 7
13: StackMap locals: int java.util.Map int
StackMap stack:
iconst_0
istore 8
start local 8 14: goto 30
15: StackMap locals: int
StackMap stack:
aload 2
iload 8
invokevirtual org.antlr.misc.OrderedHashSet.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.Label
astore 9
start local 9 16: aload 0
aload 1
aload 9
invokevirtual org.antlr.analysis.NFAToDFAConverter.reach:(Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/Label;)Lorg/antlr/analysis/DFAState;
astore 10
start local 10 17: getstatic org.antlr.analysis.NFAToDFAConverter.debug:Z
ifeq 21
18: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "DFA state after reach "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
19: aload 9
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
getfield org.antlr.analysis.NFA.grammar:Lorg/antlr/tool/Grammar;
invokevirtual org.antlr.analysis.Label.toString:(Lorg/antlr/tool/Grammar;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "->"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
20: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
21: StackMap locals: org.antlr.analysis.Label org.antlr.analysis.DFAState
StackMap stack:
aload 10
ifnonnull 23
22: goto 29
23: StackMap locals:
StackMap stack:
aload 10
invokevirtual org.antlr.analysis.DFAState.getUniqueAlt:()I
iconst_m1
if_icmpne 25
24: aload 0
aload 10
invokevirtual org.antlr.analysis.NFAToDFAConverter.closure:(Lorg/antlr/analysis/DFAState;)V
25: StackMap locals:
StackMap stack:
aload 0
aload 10
invokevirtual org.antlr.analysis.NFAToDFAConverter.addDFAStateToWorkList:(Lorg/antlr/analysis/DFAState;)Lorg/antlr/analysis/DFAState;
astore 11
start local 11 26: iload 5
27: aload 1
aload 9
aload 11
aload 6
invokestatic org.antlr.analysis.NFAToDFAConverter.addTransition:(Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/Label;Lorg/antlr/analysis/DFAState;Ljava/util/Map;)I
iadd
istore 5
28: aload 11
aload 1
invokevirtual org.antlr.analysis.DFAState.getLookaheadDepth:()I
iconst_1
iadd
invokevirtual org.antlr.analysis.DFAState.setLookaheadDepth:(I)V
end local 11 end local 10 end local 9 29: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
30: iload 8
iload 7
if_icmplt 15
end local 8 31: aload 1
invokevirtual org.antlr.analysis.DFAState.isResolvedWithPredicates:()Z
ifne 36
iload 5
ifne 36
32: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.probe:Lorg/antlr/analysis/DecisionProbe;
aload 1
invokevirtual org.antlr.analysis.DecisionProbe.reportDanglingState:(Lorg/antlr/analysis/DFAState;)V
33: aload 0
aload 1
aconst_null
invokevirtual org.antlr.analysis.NFAToDFAConverter.resolveByPickingMinAlt:(Lorg/antlr/analysis/DFAState;Ljava/util/Set;)I
istore 8
start local 8 34: aload 1
iconst_1
invokevirtual org.antlr.analysis.DFAState.setAcceptState:(Z)V
35: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
iload 8
aload 1
invokevirtual org.antlr.analysis.DFA.setAcceptState:(ILorg/antlr/analysis/DFAState;)V
end local 8 36: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.antlr.analysis.DFAState.isResolvedWithPredicates:()Z
ifeq 38
37: aload 0
aload 1
invokevirtual org.antlr.analysis.NFAToDFAConverter.addPredicateTransitions:(Lorg/antlr/analysis/DFAState;)V
38: StackMap locals:
StackMap stack:
return
end local 7 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 39 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 39 1 d Lorg/antlr/analysis/DFAState;
1 39 2 labels Lorg/antlr/misc/OrderedHashSet<Lorg/antlr/analysis/Label;>;
2 39 3 EOTLabel Lorg/antlr/analysis/Label;
5 39 4 containsEOT Z
9 39 5 numberOfEdgesEmanating I
10 39 6 targetToLabelMap Ljava/util/Map<Ljava/lang/Integer;Lorg/antlr/analysis/Transition;>;
11 39 7 numLabels I
14 31 8 i I
16 29 9 label Lorg/antlr/analysis/Label;
17 29 10 t Lorg/antlr/analysis/DFAState;
26 29 11 targetState Lorg/antlr/analysis/DFAState;
34 36 8 minAlt I
MethodParameters:
Name Flags
d
protected static int addTransition(org.antlr.analysis.DFAState, org.antlr.analysis.Label, org.antlr.analysis.DFAState, java.util.Map<java.lang.Integer, org.antlr.analysis.Transition>);
descriptor: (Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/Label;Lorg/antlr/analysis/DFAState;Ljava/util/Map;)I
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: getstatic org.antlr.analysis.DFAOptimizer.COLLAPSE_ALL_PARALLEL_EDGES:Z
ifeq 17
2: aload 2
getfield org.antlr.analysis.DFAState.stateNumber:I
invokestatic org.antlr.misc.Utils.integer:(I)Ljava/lang/Integer;
astore 5
start local 5 3: aload 3
aload 5
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.antlr.analysis.Transition
astore 6
start local 6 4: aload 6
ifnull 11
5: aload 1
invokevirtual org.antlr.analysis.Label.getAtom:()I
bipush -2
if_icmpne 8
6: aload 6
new org.antlr.analysis.Label
dup
bipush -2
invokespecial org.antlr.analysis.Label.<init>:(I)V
putfield org.antlr.analysis.Transition.label:Lorg/antlr/analysis/Label;
7: goto 19
8: StackMap locals: int java.lang.Integer org.antlr.analysis.Transition
StackMap stack:
aload 6
getfield org.antlr.analysis.Transition.label:Lorg/antlr/analysis/Label;
invokevirtual org.antlr.analysis.Label.getAtom:()I
bipush -2
if_icmpeq 19
9: aload 6
getfield org.antlr.analysis.Transition.label:Lorg/antlr/analysis/Label;
aload 1
invokevirtual org.antlr.analysis.Label.add:(Lorg/antlr/analysis/Label;)V
10: goto 19
11: StackMap locals:
StackMap stack:
iconst_1
istore 4
12: aload 1
invokevirtual org.antlr.analysis.Label.clone:()Ljava/lang/Object;
checkcast org.antlr.analysis.Label
astore 1
13: aload 0
aload 2
aload 1
invokevirtual org.antlr.analysis.DFAState.addTransition:(Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/Label;)I
istore 7
start local 7 14: aload 0
iload 7
invokevirtual org.antlr.analysis.DFAState.getTransition:(I)Lorg/antlr/analysis/Transition;
astore 8
start local 8 15: aload 3
aload 5
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 8 end local 7 end local 6 end local 5 16: goto 19
17: StackMap locals:
StackMap stack:
iconst_1
istore 4
18: aload 0
aload 2
aload 1
invokevirtual org.antlr.analysis.DFAState.addTransition:(Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/Label;)I
pop
19: StackMap locals:
StackMap stack:
iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 d Lorg/antlr/analysis/DFAState;
0 20 1 label Lorg/antlr/analysis/Label;
0 20 2 targetState Lorg/antlr/analysis/DFAState;
0 20 3 targetToLabelMap Ljava/util/Map<Ljava/lang/Integer;Lorg/antlr/analysis/Transition;>;
1 20 4 n I
3 16 5 tI Ljava/lang/Integer;
4 16 6 oldTransition Lorg/antlr/analysis/Transition;
14 16 7 transitionIndex I
15 16 8 trans Lorg/antlr/analysis/Transition;
Signature: (Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/Label;Lorg/antlr/analysis/DFAState;Ljava/util/Map<Ljava/lang/Integer;Lorg/antlr/analysis/Transition;>;)I
MethodParameters:
Name Flags
d
label
targetState
targetToLabelMap
public void closure(org.antlr.analysis.DFAState);
descriptor: (Lorg/antlr/analysis/DFAState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=2
start local 0 start local 1 0: getstatic org.antlr.analysis.NFAToDFAConverter.debug:Z
ifeq 2
1: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "closure("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 3: aload 2
aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
4: aload 2
invokeinterface java.util.List.size:()I
istore 3
start local 3 5: iconst_0
istore 4
start local 4 6: goto 18
7: StackMap locals: java.util.List int int
StackMap stack:
aload 2
iload 4
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 5
start local 5 8: aload 5
getfield org.antlr.analysis.NFAConfiguration.singleAtomTransitionEmanating:Z
ifeq 10
9: goto 17
10: StackMap locals: org.antlr.analysis.NFAConfiguration
StackMap stack:
aload 0
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
aload 5
getfield org.antlr.analysis.NFAConfiguration.state:I
invokevirtual org.antlr.analysis.NFA.getState:(I)Lorg/antlr/analysis/NFAState;
11: aload 5
getfield org.antlr.analysis.NFAConfiguration.alt:I
12: aload 5
getfield org.antlr.analysis.NFAConfiguration.context:Lorg/antlr/analysis/NFAContext;
13: aload 5
getfield org.antlr.analysis.NFAConfiguration.semanticContext:Lorg/antlr/analysis/SemanticContext;
14: aload 1
15: iconst_0
16: invokevirtual org.antlr.analysis.NFAToDFAConverter.closure:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/DFAState;Z)V
end local 5 17: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
18: iload 4
iload 3
if_icmplt 7
end local 4 19: aload 1
aconst_null
putfield org.antlr.analysis.DFAState.closureBusy:Ljava/util/Set;
20: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 21 1 d Lorg/antlr/analysis/DFAState;
3 21 2 configs Ljava/util/List<Lorg/antlr/analysis/NFAConfiguration;>;
5 21 3 numConfigs I
6 19 4 i I
8 17 5 c Lorg/antlr/analysis/NFAConfiguration;
MethodParameters:
Name Flags
d
public void closure(org.antlr.analysis.NFAState, int, org.antlr.analysis.NFAContext, org.antlr.analysis.SemanticContext, org.antlr.analysis.DFAState, boolean);
descriptor: (Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/DFAState;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=13, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: getstatic org.antlr.analysis.NFAToDFAConverter.debug:Z
ifeq 4
1: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "closure at "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield org.antlr.analysis.NFAState.enclosingRule:Lorg/antlr/tool/Rule;
getfield org.antlr.tool.Rule.name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " state "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
getfield org.antlr.analysis.NFAState.stateNumber:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "|"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " filling DFA state "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
getfield org.antlr.analysis.DFAState.stateNumber:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " with context "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
new org.antlr.analysis.NFAConfiguration
dup
aload 1
getfield org.antlr.analysis.NFAState.stateNumber:I
5: iload 2
6: aload 3
7: aload 4
8: invokespecial org.antlr.analysis.NFAConfiguration.<init>:(IILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;)V
9: astore 7
start local 7 10: aload 5
aload 7
invokestatic org.antlr.analysis.NFAToDFAConverter.closureIsBusy:(Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/NFAConfiguration;)Z
ifeq 17
11: getstatic org.antlr.analysis.NFAToDFAConverter.debug:Z
ifeq 16
12: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "avoid visiting exact closure computation NFA config: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
13: aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " in "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
getfield org.antlr.analysis.NFAState.enclosingRule:Lorg/antlr/tool/Rule;
getfield org.antlr.tool.Rule.name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
14: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
15: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "state is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
getfield org.antlr.analysis.DFAState.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.decisionNumber:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
getfield org.antlr.analysis.DFAState.stateNumber:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
16: StackMap locals: org.antlr.analysis.NFAConfiguration
StackMap stack:
return
17: StackMap locals:
StackMap stack:
aload 5
getfield org.antlr.analysis.DFAState.closureBusy:Ljava/util/Set;
aload 7
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
18: aload 5
aload 1
aload 7
invokevirtual org.antlr.analysis.DFAState.addNFAConfiguration:(Lorg/antlr/analysis/NFAState;Lorg/antlr/analysis/NFAConfiguration;)V
19: aload 1
getfield org.antlr.analysis.NFAState.transition:[Lorg/antlr/analysis/Transition;
iconst_0
aaload
astore 8
start local 8 20: aload 8
instanceof org.antlr.analysis.RuleClosureTransition
ifeq 38
21: aload 3
aload 1
getfield org.antlr.analysis.NFAState.stateNumber:I
invokevirtual org.antlr.analysis.NFAContext.recursionDepthEmanatingFromState:(I)I
istore 9
start local 9 22: iload 9
iconst_1
if_icmpne 27
aload 5
getfield org.antlr.analysis.DFAState.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.getUserMaxLookahead:()I
ifne 27
23: aload 5
getfield org.antlr.analysis.DFAState.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.recursiveAltSet:Lorg/antlr/misc/IntSet;
iload 2
invokeinterface org.antlr.misc.IntSet.add:(I)V
24: aload 5
getfield org.antlr.analysis.DFAState.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.recursiveAltSet:Lorg/antlr/misc/IntSet;
invokeinterface org.antlr.misc.IntSet.size:()I
iconst_1
if_icmple 27
25: aload 5
iconst_1
putfield org.antlr.analysis.DFAState.abortedDueToMultipleRecursiveAlts:Z
26: new org.antlr.analysis.NonLLStarDecisionException
dup
aload 5
getfield org.antlr.analysis.DFAState.dfa:Lorg/antlr/analysis/DFA;
invokespecial org.antlr.analysis.NonLLStarDecisionException.<init>:(Lorg/antlr/analysis/DFA;)V
athrow
27: StackMap locals: org.antlr.analysis.Transition int
StackMap stack:
iload 9
getstatic org.antlr.analysis.NFAContext.MAX_SAME_RULE_INVOCATIONS_PER_NFA_CONFIG_STACK:I
if_icmplt 33
28: aload 5
iconst_1
putfield org.antlr.analysis.DFAState.abortedDueToRecursionOverflow:Z
29: aload 5
getfield org.antlr.analysis.DFAState.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.probe:Lorg/antlr/analysis/DecisionProbe;
aload 5
aload 7
invokevirtual org.antlr.analysis.DecisionProbe.reportRecursionOverflow:(Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/NFAConfiguration;)V
30: getstatic org.antlr.analysis.NFAToDFAConverter.debug:Z
ifeq 32
31: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "analysis overflow in closure("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
getfield org.antlr.analysis.DFAState.stateNumber:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
32: StackMap locals:
StackMap stack:
return
33: StackMap locals:
StackMap stack:
aload 8
checkcast org.antlr.analysis.RuleClosureTransition
astore 10
start local 10 34: new org.antlr.analysis.NFAContext
dup
aload 3
aload 1
invokespecial org.antlr.analysis.NFAContext.<init>:(Lorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/NFAState;)V
astore 11
start local 11 35: aload 10
getfield org.antlr.analysis.RuleClosureTransition.target:Lorg/antlr/analysis/State;
checkcast org.antlr.analysis.NFAState
astore 12
start local 12 36: aload 0
aload 12
iload 2
aload 11
aload 4
aload 5
iload 6
invokevirtual org.antlr.analysis.NFAToDFAConverter.closure:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/DFAState;Z)V
end local 12 end local 11 end local 10 end local 9 37: goto 91
38: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.antlr.analysis.NFAState.isAcceptState:()Z
ifeq 46
aload 3
getfield org.antlr.analysis.NFAContext.parent:Lorg/antlr/analysis/NFAContext;
ifnull 46
39: aload 3
getfield org.antlr.analysis.NFAContext.invokingState:Lorg/antlr/analysis/NFAState;
astore 9
start local 9 40: aload 9
getfield org.antlr.analysis.NFAState.transition:[Lorg/antlr/analysis/Transition;
iconst_0
aaload
checkcast org.antlr.analysis.RuleClosureTransition
41: astore 10
start local 10 42: aload 10
getfield org.antlr.analysis.RuleClosureTransition.followState:Lorg/antlr/analysis/NFAState;
astore 11
start local 11 43: aload 3
getfield org.antlr.analysis.NFAContext.parent:Lorg/antlr/analysis/NFAContext;
astore 12
start local 12 44: aload 0
aload 11
iload 2
aload 12
aload 4
aload 5
iload 6
invokevirtual org.antlr.analysis.NFAToDFAConverter.closure:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/DFAState;Z)V
end local 12 end local 11 end local 10 end local 9 45: goto 91
46: StackMap locals:
StackMap stack:
aload 8
ifnull 58
aload 8
invokevirtual org.antlr.analysis.Transition.isEpsilon:()Z
ifeq 58
47: iload 6
istore 9
start local 9 48: aload 8
invokevirtual org.antlr.analysis.Transition.isAction:()Z
ifeq 50
iload 6
ifeq 50
49: iconst_0
istore 9
50: StackMap locals: int
StackMap stack:
aload 0
aload 8
getfield org.antlr.analysis.Transition.target:Lorg/antlr/analysis/State;
checkcast org.antlr.analysis.NFAState
51: iload 2
52: aload 3
53: aload 4
54: aload 5
55: iload 9
56: invokevirtual org.antlr.analysis.NFAToDFAConverter.closure:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/DFAState;Z)V
end local 9 57: goto 82
58: StackMap locals:
StackMap stack:
aload 8
ifnull 82
aload 8
invokevirtual org.antlr.analysis.Transition.isSemanticPredicate:()Z
ifeq 82
59: aload 8
getfield org.antlr.analysis.Transition.label:Lorg/antlr/analysis/Label;
invokevirtual org.antlr.analysis.Label.getSemanticContext:()Lorg/antlr/analysis/SemanticContext;
astore 9
start local 9 60: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.computingStartState:Z
ifeq 65
61: iload 6
ifeq 64
62: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
iconst_1
putfield org.antlr.analysis.DFA.predicateVisible:Z
63: goto 65
64: StackMap locals: org.antlr.analysis.SemanticContext
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
iconst_1
putfield org.antlr.analysis.DFA.hasPredicateBlockedByAction:Z
65: StackMap locals:
StackMap stack:
aload 4
astore 10
start local 10 66: iload 6
ifeq 75
67: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.decisionNFAStartState:Lorg/antlr/analysis/NFAState;
iload 2
invokevirtual org.antlr.analysis.NFAState.translateDisplayAltToWalkAlt:(I)I
68: istore 11
start local 11 69: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
getfield org.antlr.analysis.NFA.grammar:Lorg/antlr/tool/Grammar;
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.decisionNFAStartState:Lorg/antlr/analysis/NFAState;
iload 11
invokevirtual org.antlr.tool.Grammar.getNFAStateForAltOfDecision:(Lorg/antlr/analysis/NFAState;I)Lorg/antlr/analysis/NFAState;
70: astore 12
start local 12 71: aload 9
invokevirtual org.antlr.analysis.SemanticContext.isSyntacticPredicate:()Z
ifeq 73
72: aload 1
aload 12
getfield org.antlr.analysis.NFAState.transition:[Lorg/antlr/analysis/Transition;
iconst_0
aaload
getfield org.antlr.analysis.Transition.target:Lorg/antlr/analysis/State;
if_acmpne 75
73: StackMap locals: org.antlr.analysis.SemanticContext int org.antlr.analysis.NFAState
StackMap stack:
aload 4
aload 9
invokestatic org.antlr.analysis.SemanticContext.and:(Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/SemanticContext;)Lorg/antlr/analysis/SemanticContext;
74: astore 10
end local 12 end local 11 75: StackMap locals:
StackMap stack:
aload 0
aload 8
getfield org.antlr.analysis.Transition.target:Lorg/antlr/analysis/State;
checkcast org.antlr.analysis.NFAState
76: iload 2
77: aload 3
78: aload 10
79: aload 5
80: iload 6
81: invokevirtual org.antlr.analysis.NFAToDFAConverter.closure:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/DFAState;Z)V
end local 10 end local 9 82: StackMap locals:
StackMap stack:
aload 1
getfield org.antlr.analysis.NFAState.transition:[Lorg/antlr/analysis/Transition;
iconst_1
aaload
astore 9
start local 9 83: aload 9
ifnull 91
aload 9
invokevirtual org.antlr.analysis.Transition.isEpsilon:()Z
ifeq 91
84: aload 0
aload 9
getfield org.antlr.analysis.Transition.target:Lorg/antlr/analysis/State;
checkcast org.antlr.analysis.NFAState
85: iload 2
86: aload 3
87: aload 4
88: aload 5
89: iload 6
90: invokevirtual org.antlr.analysis.NFAToDFAConverter.closure:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/DFAState;Z)V
end local 9 91: StackMap locals:
StackMap stack:
return
end local 8 end local 7 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 92 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 92 1 p Lorg/antlr/analysis/NFAState;
0 92 2 alt I
0 92 3 context Lorg/antlr/analysis/NFAContext;
0 92 4 semanticContext Lorg/antlr/analysis/SemanticContext;
0 92 5 d Lorg/antlr/analysis/DFAState;
0 92 6 collectPredicates Z
10 92 7 proposedNFAConfiguration Lorg/antlr/analysis/NFAConfiguration;
20 92 8 transition0 Lorg/antlr/analysis/Transition;
22 37 9 depth I
34 37 10 ref Lorg/antlr/analysis/RuleClosureTransition;
35 37 11 newContext Lorg/antlr/analysis/NFAContext;
36 37 12 ruleTarget Lorg/antlr/analysis/NFAState;
40 45 9 whichStateInvokedRule Lorg/antlr/analysis/NFAState;
42 45 10 edgeToRule Lorg/antlr/analysis/RuleClosureTransition;
43 45 11 continueState Lorg/antlr/analysis/NFAState;
44 45 12 newContext Lorg/antlr/analysis/NFAContext;
48 57 9 collectPredicatesAfterAction Z
60 82 9 labelContext Lorg/antlr/analysis/SemanticContext;
66 82 10 newSemanticContext Lorg/antlr/analysis/SemanticContext;
69 75 11 walkAlt I
71 75 12 altLeftEdge Lorg/antlr/analysis/NFAState;
83 91 9 transition1 Lorg/antlr/analysis/Transition;
MethodParameters:
Name Flags
p
alt
context
semanticContext
d
collectPredicates
public static boolean closureIsBusy(org.antlr.analysis.DFAState, org.antlr.analysis.NFAConfiguration);
descriptor: (Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/NFAConfiguration;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.antlr.analysis.DFAState.closureBusy:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 d Lorg/antlr/analysis/DFAState;
0 1 1 proposedNFAConfiguration Lorg/antlr/analysis/NFAConfiguration;
MethodParameters:
Name Flags
d
proposedNFAConfiguration
public org.antlr.analysis.DFAState reach(org.antlr.analysis.DFAState, org.antlr.analysis.Label);
descriptor: (Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/Label;)Lorg/antlr/analysis/DFAState;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.newState:()Lorg/antlr/analysis/DFAState;
astore 3
start local 3 1: aload 1
getfield org.antlr.analysis.DFAState.configurationsWithLabeledEdges:Ljava/util/List;
astore 4
start local 4 2: aload 4
invokeinterface java.util.List.size:()I
istore 5
start local 5 3: iconst_0
istore 6
start local 6 4: goto 23
5: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState org.antlr.analysis.Label org.antlr.analysis.DFAState java.util.List int int
StackMap stack:
aload 4
iload 6
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 7
start local 7 6: aload 7
getfield org.antlr.analysis.NFAConfiguration.resolved:Z
ifne 22
aload 7
getfield org.antlr.analysis.NFAConfiguration.resolveWithPredicate:Z
ifeq 8
7: goto 22
8: StackMap locals: org.antlr.analysis.NFAConfiguration
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
aload 7
getfield org.antlr.analysis.NFAConfiguration.state:I
invokevirtual org.antlr.analysis.NFA.getState:(I)Lorg/antlr/analysis/NFAState;
astore 8
start local 8 9: aload 8
getfield org.antlr.analysis.NFAState.transition:[Lorg/antlr/analysis/Transition;
iconst_0
aaload
astore 9
start local 9 10: aload 9
ifnull 22
aload 7
getfield org.antlr.analysis.NFAConfiguration.singleAtomTransitionEmanating:Z
ifne 12
11: goto 22
12: StackMap locals: org.antlr.analysis.NFAState org.antlr.analysis.Transition
StackMap stack:
aload 9
getfield org.antlr.analysis.Transition.label:Lorg/antlr/analysis/Label;
astore 10
start local 10 13: aload 7
getfield org.antlr.analysis.NFAConfiguration.context:Lorg/antlr/analysis/NFAContext;
getfield org.antlr.analysis.NFAContext.parent:Lorg/antlr/analysis/NFAContext;
ifnull 15
aload 10
getfield org.antlr.analysis.Label.label:I
bipush -2
if_icmpne 15
14: goto 22
15: StackMap locals: org.antlr.analysis.Label
StackMap stack:
aload 2
aload 10
invokestatic org.antlr.analysis.Label.intersect:(Lorg/antlr/analysis/Label;Lorg/antlr/analysis/Label;)Z
ifeq 22
16: aload 3
17: aload 9
getfield org.antlr.analysis.Transition.target:Lorg/antlr/analysis/State;
checkcast org.antlr.analysis.NFAState
18: aload 7
getfield org.antlr.analysis.NFAConfiguration.alt:I
19: aload 7
getfield org.antlr.analysis.NFAConfiguration.context:Lorg/antlr/analysis/NFAContext;
20: aload 7
getfield org.antlr.analysis.NFAConfiguration.semanticContext:Lorg/antlr/analysis/SemanticContext;
21: invokevirtual org.antlr.analysis.DFAState.addNFAConfiguration:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;)Lorg/antlr/analysis/NFAConfiguration;
pop
end local 10 end local 9 end local 8 end local 7 22: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState org.antlr.analysis.Label org.antlr.analysis.DFAState java.util.List int int
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
23: iload 6
iload 5
if_icmplt 5
end local 6 24: aload 3
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
invokevirtual org.antlr.misc.OrderedHashSet.size:()I
ifne 27
25: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 3
getfield org.antlr.analysis.DFAState.stateNumber:I
aconst_null
invokevirtual org.antlr.analysis.DFA.setState:(ILorg/antlr/analysis/DFAState;)V
26: aconst_null
astore 3
27: StackMap locals:
StackMap stack:
aload 3
areturn
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 28 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 28 1 d Lorg/antlr/analysis/DFAState;
0 28 2 label Lorg/antlr/analysis/Label;
1 28 3 labelDFATarget Lorg/antlr/analysis/DFAState;
2 28 4 configs Ljava/util/List<Lorg/antlr/analysis/NFAConfiguration;>;
3 28 5 numConfigs I
4 24 6 i I
6 22 7 c Lorg/antlr/analysis/NFAConfiguration;
9 22 8 p Lorg/antlr/analysis/NFAState;
10 22 9 edge Lorg/antlr/analysis/Transition;
13 22 10 edgeLabel Lorg/antlr/analysis/Label;
MethodParameters:
Name Flags
d
label
protected void convertToEOTAcceptState(org.antlr.analysis.DFAState);
descriptor: (Lorg/antlr/analysis/DFAState;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=9, args_size=2
start local 0 start local 1 0: new org.antlr.analysis.Label
dup
bipush -2
invokespecial org.antlr.analysis.Label.<init>:(I)V
astore 2
start local 2 1: aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
invokevirtual org.antlr.misc.OrderedHashSet.size:()I
istore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 16
4: StackMap locals: org.antlr.analysis.Label int int
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
iload 4
invokevirtual org.antlr.misc.OrderedHashSet.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 5
start local 5 5: aload 5
getfield org.antlr.analysis.NFAConfiguration.resolved:Z
ifne 15
aload 5
getfield org.antlr.analysis.NFAConfiguration.resolveWithPredicate:Z
ifeq 7
6: goto 15
7: StackMap locals: org.antlr.analysis.NFAConfiguration
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
aload 5
getfield org.antlr.analysis.NFAConfiguration.state:I
invokevirtual org.antlr.analysis.NFA.getState:(I)Lorg/antlr/analysis/NFAState;
astore 6
start local 6 8: aload 6
getfield org.antlr.analysis.NFAState.transition:[Lorg/antlr/analysis/Transition;
iconst_0
aaload
astore 7
start local 7 9: aload 7
getfield org.antlr.analysis.Transition.label:Lorg/antlr/analysis/Label;
astore 8
start local 8 10: aload 8
aload 2
invokevirtual org.antlr.analysis.Label.equals:(Ljava/lang/Object;)Z
ifeq 15
11: aload 1
iconst_1
invokevirtual org.antlr.analysis.DFAState.setAcceptState:(Z)V
12: aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
invokevirtual org.antlr.misc.OrderedHashSet.clear:()V
13: aload 1
aload 6
aload 5
getfield org.antlr.analysis.NFAConfiguration.alt:I
aload 5
getfield org.antlr.analysis.NFAConfiguration.context:Lorg/antlr/analysis/NFAContext;
aload 5
getfield org.antlr.analysis.NFAConfiguration.semanticContext:Lorg/antlr/analysis/SemanticContext;
invokevirtual org.antlr.analysis.DFAState.addNFAConfiguration:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;)Lorg/antlr/analysis/NFAConfiguration;
pop
14: return
end local 8 end local 7 end local 6 end local 5 15: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
16: iload 4
iload 3
if_icmplt 4
end local 4 17: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 18 1 d Lorg/antlr/analysis/DFAState;
1 18 2 eot Lorg/antlr/analysis/Label;
2 18 3 numConfigs I
3 17 4 i I
5 15 5 c Lorg/antlr/analysis/NFAConfiguration;
8 15 6 p Lorg/antlr/analysis/NFAState;
9 15 7 edge Lorg/antlr/analysis/Transition;
10 15 8 edgeLabel Lorg/antlr/analysis/Label;
MethodParameters:
Name Flags
d
protected org.antlr.analysis.DFAState addDFAStateToWorkList(org.antlr.analysis.DFAState);
descriptor: (Lorg/antlr/analysis/DFAState;)Lorg/antlr/analysis/DFAState;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 1
invokevirtual org.antlr.analysis.DFA.addState:(Lorg/antlr/analysis/DFAState;)Lorg/antlr/analysis/DFAState;
astore 2
start local 2 1: aload 1
aload 2
if_acmpeq 4
2: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 1
getfield org.antlr.analysis.DFAState.stateNumber:I
aload 2
invokevirtual org.antlr.analysis.DFA.setState:(ILorg/antlr/analysis/DFAState;)V
3: aload 2
areturn
4: StackMap locals: org.antlr.analysis.DFAState
StackMap stack:
aload 0
aload 1
invokevirtual org.antlr.analysis.NFAToDFAConverter.resolveNonDeterminisms:(Lorg/antlr/analysis/DFAState;)V
5: aload 1
invokevirtual org.antlr.analysis.DFAState.getUniquelyPredictedAlt:()I
istore 3
start local 3 6: iload 3
iconst_m1
if_icmpeq 9
7: aload 0
aload 1
iload 3
invokevirtual org.antlr.analysis.NFAToDFAConverter.convertToAcceptState:(Lorg/antlr/analysis/DFAState;I)Lorg/antlr/analysis/DFAState;
astore 1
8: goto 10
9: StackMap locals: int
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.work:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: StackMap locals:
StackMap stack:
aload 1
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 11 1 d Lorg/antlr/analysis/DFAState;
1 11 2 existingState Lorg/antlr/analysis/DFAState;
6 11 3 alt I
MethodParameters:
Name Flags
d
protected org.antlr.analysis.DFAState convertToAcceptState(org.antlr.analysis.DFAState, int);
descriptor: (Lorg/antlr/analysis/DFAState;I)Lorg/antlr/analysis/DFAState;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.antlr.analysis.DFAOptimizer.MERGE_STOP_STATES:Z
ifeq 16
1: aload 1
invokevirtual org.antlr.analysis.DFAState.getNonDeterministicAlts:()Ljava/util/Set;
ifnonnull 16
2: aload 1
getfield org.antlr.analysis.DFAState.abortedDueToRecursionOverflow:Z
ifne 16
3: aload 1
getfield org.antlr.analysis.DFAState.abortedDueToMultipleRecursiveAlts:Z
ifne 16
4: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
iload 2
invokevirtual org.antlr.analysis.DFA.getAcceptState:(I)Lorg/antlr/analysis/DFAState;
astore 3
start local 3 5: aload 3
ifnull 16
6: aload 1
invokevirtual org.antlr.analysis.DFAState.getGatedPredicatesInNFAConfigurations:()Lorg/antlr/analysis/SemanticContext;
astore 4
start local 4 7: aload 3
invokevirtual org.antlr.analysis.DFAState.getGatedPredicatesInNFAConfigurations:()Lorg/antlr/analysis/SemanticContext;
8: astore 5
start local 5 9: aload 4
ifnonnull 10
aload 5
ifnull 12
10: StackMap locals: org.antlr.analysis.DFAState org.antlr.analysis.SemanticContext org.antlr.analysis.SemanticContext
StackMap stack:
aload 4
ifnull 16
aload 5
ifnull 16
11: aload 4
aload 5
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 16
12: StackMap locals:
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 1
getfield org.antlr.analysis.DFAState.stateNumber:I
aload 3
invokevirtual org.antlr.analysis.DFA.setState:(ILorg/antlr/analysis/DFAState;)V
13: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 1
invokevirtual org.antlr.analysis.DFA.removeState:(Lorg/antlr/analysis/DFAState;)V
14: aload 3
astore 1
15: aload 1
areturn
end local 5 end local 4 end local 3 16: StackMap locals:
StackMap stack:
aload 1
iconst_1
invokevirtual org.antlr.analysis.DFAState.setAcceptState:(Z)V
17: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
iload 2
aload 1
invokevirtual org.antlr.analysis.DFA.setAcceptState:(ILorg/antlr/analysis/DFAState;)V
18: aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 19 1 d Lorg/antlr/analysis/DFAState;
0 19 2 alt I
5 16 3 acceptStateForAlt Lorg/antlr/analysis/DFAState;
7 16 4 gatedPreds Lorg/antlr/analysis/SemanticContext;
9 16 5 existingStateGatedPreds Lorg/antlr/analysis/SemanticContext;
MethodParameters:
Name Flags
d
alt
public void resolveNonDeterminisms(org.antlr.analysis.DFAState);
descriptor: (Lorg/antlr/analysis/DFAState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: getstatic org.antlr.analysis.NFAToDFAConverter.debug:Z
ifeq 2
1: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "resolveNonDeterminisms "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual org.antlr.analysis.DFAState.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 3: aload 1
invokevirtual org.antlr.analysis.DFAState.getNonDeterministicAlts:()Ljava/util/Set;
astore 3
start local 3 4: getstatic org.antlr.analysis.NFAToDFAConverter.debug:Z
ifeq 6
aload 3
ifnull 6
5: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "nondet alts="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
6: StackMap locals: int java.util.Set
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
iconst_0
invokevirtual org.antlr.misc.OrderedHashSet.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 4
start local 4 7: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
aload 4
getfield org.antlr.analysis.NFAConfiguration.state:I
invokevirtual org.antlr.analysis.NFA.getState:(I)Lorg/antlr/analysis/NFAState;
astore 5
start local 5 8: aload 5
invokevirtual org.antlr.analysis.NFAState.isEOTTargetState:()Z
ifeq 15
9: aload 1
invokevirtual org.antlr.analysis.DFAState.getAltSet:()Ljava/util/Set;
astore 6
start local 6 10: aload 6
ifnull 15
aload 6
invokeinterface java.util.Set.size:()I
iconst_1
if_icmple 15
11: aload 6
astore 3
12: aload 1
getfield org.antlr.analysis.DFAState.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.isTokensRuleDecision:()Z
ifeq 15
13: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.probe:Lorg/antlr/analysis/DecisionProbe;
aload 1
aload 6
invokevirtual org.antlr.analysis.DecisionProbe.reportLexerRuleNondeterminism:(Lorg/antlr/analysis/DFAState;Ljava/util/Set;)V
14: iconst_1
istore 2
end local 6 15: StackMap locals: org.antlr.analysis.NFAConfiguration org.antlr.analysis.NFAState
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.abortedDueToRecursionOverflow:Z
ifne 17
aload 3
ifnonnull 17
16: return
17: StackMap locals:
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.abortedDueToRecursionOverflow:Z
ifne 19
iload 2
ifne 19
18: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.probe:Lorg/antlr/analysis/DecisionProbe;
aload 1
aload 3
invokevirtual org.antlr.analysis.DecisionProbe.reportNondeterminism:(Lorg/antlr/analysis/DFAState;Ljava/util/Set;)V
19: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 3
invokevirtual org.antlr.analysis.NFAToDFAConverter.tryToResolveWithSemanticPredicates:(Lorg/antlr/analysis/DFAState;Ljava/util/Set;)Z
20: istore 6
start local 6 21: iload 6
ifeq 27
22: getstatic org.antlr.analysis.NFAToDFAConverter.debug:Z
ifeq 24
23: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "resolved DFA state "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield org.antlr.analysis.DFAState.stateNumber:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " with pred"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
24: StackMap locals: int
StackMap stack:
aload 1
iconst_1
putfield org.antlr.analysis.DFAState.resolvedWithPredicates:Z
25: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.probe:Lorg/antlr/analysis/DecisionProbe;
aload 1
invokevirtual org.antlr.analysis.DecisionProbe.reportNondeterminismResolvedWithSemanticPredicate:(Lorg/antlr/analysis/DFAState;)V
26: return
27: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 3
invokevirtual org.antlr.analysis.NFAToDFAConverter.resolveByChoosingFirstAlt:(Lorg/antlr/analysis/DFAState;Ljava/util/Set;)I
pop
28: 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 29 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 29 1 d Lorg/antlr/analysis/DFAState;
3 29 2 conflictingLexerRules Z
4 29 3 nondeterministicAlts Ljava/util/Set<Ljava/lang/Integer;>;
7 29 4 anyConfig Lorg/antlr/analysis/NFAConfiguration;
8 29 5 anyState Lorg/antlr/analysis/NFAState;
10 15 6 allAlts Ljava/util/Set<Ljava/lang/Integer;>;
21 29 6 resolved Z
MethodParameters:
Name Flags
d
protected int resolveByChoosingFirstAlt(org.antlr.analysis.DFAState, java.util.Set<java.lang.Integer>);
descriptor: (Lorg/antlr/analysis/DFAState;Ljava/util/Set;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.isGreedy:()Z
ifeq 3
1: aload 0
aload 1
aload 2
invokevirtual org.antlr.analysis.NFAToDFAConverter.resolveByPickingMinAlt:(Lorg/antlr/analysis/DFAState;Ljava/util/Set;)I
istore 3
start local 3 2: goto 8
end local 3 3: StackMap locals:
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.getNumberOfAlts:()I
istore 4
start local 4 4: aload 2
iload 4
invokestatic org.antlr.misc.Utils.integer:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 7
5: aload 0
aload 1
aload 2
invokevirtual org.antlr.analysis.NFAToDFAConverter.resolveByPickingExitAlt:(Lorg/antlr/analysis/DFAState;Ljava/util/Set;)I
istore 3
start local 3 6: goto 8
end local 3 7: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set top int
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.antlr.analysis.NFAToDFAConverter.resolveByPickingMinAlt:(Lorg/antlr/analysis/DFAState;Ljava/util/Set;)I
istore 3
end local 4 start local 3 8: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set int
StackMap stack:
iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 9 1 d Lorg/antlr/analysis/DFAState;
0 9 2 nondeterministicAlts Ljava/util/Set<Ljava/lang/Integer;>;
2 3 3 winningAlt I
6 7 3 winningAlt I
8 9 3 winningAlt I
4 8 4 exitAlt I
Signature: (Lorg/antlr/analysis/DFAState;Ljava/util/Set<Ljava/lang/Integer;>;)I
MethodParameters:
Name Flags
d
nondeterministicAlts
protected int resolveByPickingMinAlt(org.antlr.analysis.DFAState, java.util.Set<java.lang.Integer>);
descriptor: (Lorg/antlr/analysis/DFAState;Ljava/util/Set;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnull 3
1: aload 2
invokestatic org.antlr.analysis.NFAToDFAConverter.getMinAlt:(Ljava/util/Set;)I
istore 3
start local 3 2: goto 4
end local 3 3: StackMap locals:
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.minAltInConfigurations:I
istore 3
start local 3 4: StackMap locals: int
StackMap stack:
aload 1
iload 3
aload 2
invokestatic org.antlr.analysis.NFAToDFAConverter.turnOffOtherAlts:(Lorg/antlr/analysis/DFAState;ILjava/util/Set;)V
5: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 6 1 d Lorg/antlr/analysis/DFAState;
0 6 2 nondeterministicAlts Ljava/util/Set<Ljava/lang/Integer;>;
2 3 3 min I
4 6 3 min I
Signature: (Lorg/antlr/analysis/DFAState;Ljava/util/Set<Ljava/lang/Integer;>;)I
MethodParameters:
Name Flags
d
nondeterministicAlts
protected int resolveByPickingExitAlt(org.antlr.analysis.DFAState, java.util.Set<java.lang.Integer>);
descriptor: (Lorg/antlr/analysis/DFAState;Ljava/util/Set;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.getNumberOfAlts:()I
istore 3
start local 3 1: aload 1
iload 3
aload 2
invokestatic org.antlr.analysis.NFAToDFAConverter.turnOffOtherAlts:(Lorg/antlr/analysis/DFAState;ILjava/util/Set;)V
2: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 3 1 d Lorg/antlr/analysis/DFAState;
0 3 2 nondeterministicAlts Ljava/util/Set<Ljava/lang/Integer;>;
1 3 3 exitAlt I
Signature: (Lorg/antlr/analysis/DFAState;Ljava/util/Set<Ljava/lang/Integer;>;)I
MethodParameters:
Name Flags
d
nondeterministicAlts
protected static void turnOffOtherAlts(org.antlr.analysis.DFAState, int, java.util.Set<java.lang.Integer>);
descriptor: (Lorg/antlr/analysis/DFAState;ILjava/util/Set;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
invokevirtual org.antlr.misc.OrderedHashSet.size:()I
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 9
3: StackMap locals: int int
StackMap stack:
aload 0
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
iload 4
invokevirtual org.antlr.misc.OrderedHashSet.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 5
start local 5 4: aload 5
getfield org.antlr.analysis.NFAConfiguration.alt:I
iload 1
if_icmpeq 8
5: aload 2
ifnull 7
6: aload 2
aload 5
getfield org.antlr.analysis.NFAConfiguration.alt:I
invokestatic org.antlr.misc.Utils.integer:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 8
7: StackMap locals: org.antlr.analysis.NFAConfiguration
StackMap stack:
aload 5
iconst_1
putfield org.antlr.analysis.NFAConfiguration.resolved:Z
end local 5 8: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
9: iload 4
iload 3
if_icmplt 3
end local 4 10: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 d Lorg/antlr/analysis/DFAState;
0 11 1 min I
0 11 2 nondeterministicAlts Ljava/util/Set<Ljava/lang/Integer;>;
1 11 3 numConfigs I
2 10 4 i I
4 8 5 configuration Lorg/antlr/analysis/NFAConfiguration;
Signature: (Lorg/antlr/analysis/DFAState;ILjava/util/Set<Ljava/lang/Integer;>;)V
MethodParameters:
Name Flags
d
min
nondeterministicAlts
protected static int getMinAlt(java.util.Set<java.lang.Integer>);
descriptor: (Ljava/util/Set;)I
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: ldc 2147483647
istore 1
start local 1 1: aload 0
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 6
StackMap locals: java.util.Set int top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Integer
astore 2
start local 2 3: aload 2
invokevirtual java.lang.Integer.intValue:()I
istore 4
start local 4 4: iload 4
iload 1
if_icmpge 6
5: iload 4
istore 1
end local 4 end local 2 6: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
7: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 nondeterministicAlts Ljava/util/Set<Ljava/lang/Integer;>;
1 8 1 min I
3 6 2 altI Ljava/lang/Integer;
4 6 4 alt I
Signature: (Ljava/util/Set<Ljava/lang/Integer;>;)I
MethodParameters:
Name Flags
nondeterministicAlts
protected boolean tryToResolveWithSemanticPredicates(org.antlr.analysis.DFAState, java.util.Set<java.lang.Integer>);
descriptor: (Lorg/antlr/analysis/DFAState;Ljava/util/Set;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.antlr.analysis.NFAToDFAConverter.getPredicatesPerNonDeterministicAlt:(Lorg/antlr/analysis/DFAState;Ljava/util/Set;)Ljava/util/Map;
1: astore 3
start local 3 2: aload 3
invokeinterface java.util.Map.isEmpty:()Z
ifeq 4
3: iconst_0
ireturn
4: StackMap locals: java.util.Map
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.probe:Lorg/antlr/analysis/DecisionProbe;
aload 1
aload 3
invokevirtual org.antlr.analysis.DecisionProbe.reportAltPredicateContext:(Lorg/antlr/analysis/DFAState;Ljava/util/Map;)V
5: aload 2
invokeinterface java.util.Set.size:()I
aload 3
invokeinterface java.util.Map.size:()I
isub
iconst_1
if_icmple 7
6: iconst_0
ireturn
7: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Map.size:()I
aload 2
invokeinterface java.util.Set.size:()I
iconst_1
isub
if_icmpne 30
8: aload 2
invokestatic org.antlr.misc.BitSet.of:(Ljava/util/Collection;)Lorg/antlr/misc/BitSet;
astore 4
start local 4 9: aload 3
invokestatic org.antlr.misc.BitSet.of:(Ljava/util/Map;)Lorg/antlr/misc/BitSet;
astore 5
start local 5 10: aload 4
aload 5
invokevirtual org.antlr.misc.BitSet.subtract:(Lorg/antlr/misc/IntSet;)Lorg/antlr/misc/IntSet;
invokeinterface org.antlr.misc.IntSet.getSingleElement:()I
istore 6
start local 6 11: iload 6
aload 2
invokestatic org.antlr.analysis.NFAToDFAConverter.max:(Ljava/util/Set;)I
if_icmpne 14
12: new org.antlr.analysis.SemanticContext$TruePredicate
dup
invokespecial org.antlr.analysis.SemanticContext$TruePredicate.<init>:()V
astore 7
start local 7 13: goto 21
end local 7 14: StackMap locals: org.antlr.misc.BitSet org.antlr.misc.BitSet int
StackMap stack:
aload 3
invokestatic org.antlr.analysis.NFAToDFAConverter.getUnionOfPredicates:(Ljava/util/Map;)Lorg/antlr/analysis/SemanticContext;
15: astore 8
start local 8 16: aload 8
invokevirtual org.antlr.analysis.SemanticContext.isSyntacticPredicate:()Z
ifeq 19
17: new org.antlr.analysis.SemanticContext$TruePredicate
dup
invokespecial org.antlr.analysis.SemanticContext$TruePredicate.<init>:()V
astore 7
start local 7 18: goto 21
end local 7 19: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map org.antlr.misc.BitSet org.antlr.misc.BitSet int top org.antlr.analysis.SemanticContext
StackMap stack:
aload 8
invokestatic org.antlr.analysis.SemanticContext.not:(Lorg/antlr/analysis/SemanticContext;)Lorg/antlr/analysis/SemanticContext;
20: astore 7
end local 8 start local 7 21: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map org.antlr.misc.BitSet org.antlr.misc.BitSet int org.antlr.analysis.SemanticContext
StackMap stack:
aload 3
iload 6
invokestatic org.antlr.misc.Utils.integer:(I)Ljava/lang/Integer;
aload 7
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
22: aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
invokevirtual org.antlr.misc.OrderedHashSet.size:()I
istore 8
start local 8 23: iconst_0
istore 9
start local 9 24: goto 29
25: StackMap locals: int int
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
iload 9
invokevirtual org.antlr.misc.OrderedHashSet.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 10
start local 10 26: aload 10
getfield org.antlr.analysis.NFAConfiguration.alt:I
iload 6
if_icmpne 28
27: aload 10
aload 7
putfield org.antlr.analysis.NFAConfiguration.semanticContext:Lorg/antlr/analysis/SemanticContext;
end local 10 28: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
29: iload 9
iload 8
if_icmplt 25
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 30: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map
StackMap stack:
aload 3
invokeinterface java.util.Map.size:()I
aload 2
invokeinterface java.util.Set.size:()I
if_icmpne 50
31: aload 1
getfield org.antlr.analysis.DFAState.abortedDueToRecursionOverflow:Z
ifeq 33
32: aload 1
getfield org.antlr.analysis.DFAState.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.probe:Lorg/antlr/analysis/DecisionProbe;
aload 1
invokevirtual org.antlr.analysis.DecisionProbe.removeRecursiveOverflowState:(Lorg/antlr/analysis/DFAState;)V
33: StackMap locals:
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
invokevirtual org.antlr.misc.OrderedHashSet.size:()I
istore 4
start local 4 34: iconst_0
istore 5
start local 5 35: goto 48
36: StackMap locals: int int
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
iload 5
invokevirtual org.antlr.misc.OrderedHashSet.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 6
start local 6 37: aload 3
aload 6
getfield org.antlr.analysis.NFAConfiguration.alt:I
invokestatic org.antlr.misc.Utils.integer:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.antlr.analysis.SemanticContext
astore 7
start local 7 38: aload 7
ifnull 45
39: aload 6
iconst_1
putfield org.antlr.analysis.NFAConfiguration.resolveWithPredicate:Z
40: aload 6
aload 7
putfield org.antlr.analysis.NFAConfiguration.semanticContext:Lorg/antlr/analysis/SemanticContext;
41: aload 3
aload 6
getfield org.antlr.analysis.NFAConfiguration.alt:I
invokestatic org.antlr.misc.Utils.integer:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
42: aload 7
invokevirtual org.antlr.analysis.SemanticContext.isSyntacticPredicate:()Z
ifeq 47
43: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
getfield org.antlr.analysis.NFA.grammar:Lorg/antlr/tool/Grammar;
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 7
invokevirtual org.antlr.tool.Grammar.synPredUsedInDFA:(Lorg/antlr/analysis/DFA;Lorg/antlr/analysis/SemanticContext;)V
44: goto 47
45: StackMap locals: org.antlr.analysis.NFAConfiguration org.antlr.analysis.SemanticContext
StackMap stack:
aload 2
aload 6
getfield org.antlr.analysis.NFAConfiguration.alt:I
invokestatic org.antlr.misc.Utils.integer:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 47
46: aload 6
iconst_1
putfield org.antlr.analysis.NFAConfiguration.resolved:Z
end local 7 end local 6 47: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
48: iload 5
iload 4
if_icmplt 36
end local 5 49: iconst_1
ireturn
end local 4 50: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 51 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 51 1 d Lorg/antlr/analysis/DFAState;
0 51 2 nondeterministicAlts Ljava/util/Set<Ljava/lang/Integer;>;
2 51 3 altToPredMap Ljava/util/Map<Ljava/lang/Integer;Lorg/antlr/analysis/SemanticContext;>;
9 30 4 ndSet Lorg/antlr/misc/BitSet;
10 30 5 predSet Lorg/antlr/misc/BitSet;
11 30 6 nakedAlt I
13 14 7 nakedAltPred Lorg/antlr/analysis/SemanticContext;
18 19 7 nakedAltPred Lorg/antlr/analysis/SemanticContext;
21 30 7 nakedAltPred Lorg/antlr/analysis/SemanticContext;
16 21 8 unionOfPredicatesFromAllAlts Lorg/antlr/analysis/SemanticContext;
23 30 8 numConfigs I
24 30 9 i I
26 28 10 configuration Lorg/antlr/analysis/NFAConfiguration;
34 50 4 numConfigs I
35 49 5 i I
37 47 6 configuration Lorg/antlr/analysis/NFAConfiguration;
38 47 7 semCtx Lorg/antlr/analysis/SemanticContext;
Signature: (Lorg/antlr/analysis/DFAState;Ljava/util/Set<Ljava/lang/Integer;>;)Z
MethodParameters:
Name Flags
d
nondeterministicAlts
protected java.util.Map<java.lang.Integer, org.antlr.analysis.SemanticContext> getPredicatesPerNonDeterministicAlt(org.antlr.analysis.DFAState, java.util.Set<java.lang.Integer>);
descriptor: (Lorg/antlr/analysis/DFAState;Ljava/util/Set;)Ljava/util/Map;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=15, args_size=3
start local 0 start local 1 start local 2 0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
1: astore 3
start local 3 2: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
3: astore 4
start local 4 4: aload 2
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 7
StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map java.util.Map top java.util.Iterator
StackMap stack:
5: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Integer
astore 5
start local 5 6: aload 4
aload 5
new org.antlr.misc.OrderedHashSet
dup
invokespecial org.antlr.misc.OrderedHashSet.<init>:()V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 7: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
8: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 5
start local 5 9: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 6
start local 6 10: aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
invokevirtual org.antlr.misc.OrderedHashSet.size:()I
istore 7
start local 7 11: iconst_0
istore 8
start local 8 12: goto 24
13: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map java.util.Map java.util.Map java.util.Set int int
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
iload 8
invokevirtual org.antlr.misc.OrderedHashSet.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 9
start local 9 14: aload 9
getfield org.antlr.analysis.NFAConfiguration.alt:I
invokestatic org.antlr.misc.Utils.integer:(I)Ljava/lang/Integer;
astore 10
start local 10 15: aload 2
aload 10
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 23
16: aload 9
getfield org.antlr.analysis.NFAConfiguration.semanticContext:Lorg/antlr/analysis/SemanticContext;
17: getstatic org.antlr.analysis.SemanticContext.EMPTY_SEMANTIC_CONTEXT:Lorg/antlr/analysis/SemanticContext;
18: if_acmpeq 22
19: aload 4
aload 10
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
astore 11
start local 11 20: aload 11
aload 9
getfield org.antlr.analysis.NFAConfiguration.semanticContext:Lorg/antlr/analysis/SemanticContext;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 11 21: goto 23
22: StackMap locals: org.antlr.analysis.NFAConfiguration java.lang.Integer
StackMap stack:
aload 6
aload 10
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 10 end local 9 23: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
24: iload 8
iload 7
if_icmplt 13
end local 8 25: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 8
start local 8 26: aload 2
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 10
goto 40
StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map java.util.Map java.util.Map java.util.Set int java.util.List top java.util.Iterator
StackMap stack:
27: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Integer
astore 9
start local 9 28: aload 4
aload 9
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
astore 11
start local 11 29: aload 6
aload 9
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 33
30: aload 11
invokeinterface java.util.Set.size:()I
ifle 40
31: aload 8
aload 9
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
32: goto 40
33: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map java.util.Map java.util.Map java.util.Set int java.util.List java.lang.Integer java.util.Iterator java.util.Set
StackMap stack:
aconst_null
astore 12
start local 12 34: aload 11
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 14
goto 38
StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map java.util.Map java.util.Map java.util.Set int java.util.List java.lang.Integer java.util.Iterator java.util.Set org.antlr.analysis.SemanticContext top java.util.Iterator
StackMap stack:
35: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.antlr.analysis.SemanticContext
astore 13
start local 13 36: aload 12
aload 13
invokestatic org.antlr.analysis.SemanticContext.or:(Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/SemanticContext;)Lorg/antlr/analysis/SemanticContext;
37: astore 12
end local 13 38: StackMap locals:
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 35
39: aload 3
aload 9
aload 12
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 12 end local 11 end local 9 40: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map java.util.Map java.util.Map java.util.Set int java.util.List top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 27
41: aload 8
invokeinterface java.util.List.size:()I
ifle 63
42: iconst_0
istore 9
start local 9 43: goto 59
44: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map java.util.Map java.util.Map java.util.Set int java.util.List int
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
iload 9
invokevirtual org.antlr.misc.OrderedHashSet.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 10
start local 10 45: aload 10
getfield org.antlr.analysis.NFAConfiguration.alt:I
invokestatic org.antlr.misc.Utils.integer:(I)Ljava/lang/Integer;
astore 11
start local 11 46: aload 8
aload 11
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 58
47: aload 10
getfield org.antlr.analysis.NFAConfiguration.semanticContext:Lorg/antlr/analysis/SemanticContext;
getstatic org.antlr.analysis.SemanticContext.EMPTY_SEMANTIC_CONTEXT:Lorg/antlr/analysis/SemanticContext;
if_acmpne 58
48: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
aload 10
getfield org.antlr.analysis.NFAConfiguration.state:I
invokevirtual org.antlr.analysis.NFA.getState:(I)Lorg/antlr/analysis/NFAState;
astore 12
start local 12 49: aload 12
getfield org.antlr.analysis.NFAState.incidentEdgeLabel:Lorg/antlr/analysis/Label;
ifnull 58
aload 12
getfield org.antlr.analysis.NFAState.incidentEdgeLabel:Lorg/antlr/analysis/Label;
getfield org.antlr.analysis.Label.label:I
iconst_m1
if_icmpeq 58
50: aload 12
getfield org.antlr.analysis.NFAState.associatedASTNode:Lorg/antlr/tool/GrammarAST;
ifnull 51
aload 12
getfield org.antlr.analysis.NFAState.associatedASTNode:Lorg/antlr/tool/GrammarAST;
getfield org.antlr.tool.GrammarAST.token:Lorg/antlr/runtime/Token;
ifnonnull 53
51: StackMap locals: org.antlr.analysis.NFAConfiguration java.lang.Integer org.antlr.analysis.NFAState
StackMap stack:
ldc "no AST/token for nonepsilon target w/o predicate"
invokestatic org.antlr.tool.ErrorManager.internalError:(Ljava/lang/Object;)V
52: goto 58
53: StackMap locals:
StackMap stack:
aload 5
aload 11
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
astore 13
start local 13 54: aload 13
ifnonnull 57
55: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 13
56: aload 5
aload 11
aload 13
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
57: StackMap locals: java.util.Set
StackMap stack:
aload 13
aload 12
getfield org.antlr.analysis.NFAState.associatedASTNode:Lorg/antlr/tool/GrammarAST;
getfield org.antlr.tool.GrammarAST.token:Lorg/antlr/runtime/Token;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 13 end local 12 end local 11 end local 10 58: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.Set java.util.Map java.util.Map java.util.Map java.util.Set int java.util.List int
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
59: iload 9
iload 7
if_icmplt 44
end local 9 60: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.probe:Lorg/antlr/analysis/DecisionProbe;
aload 1
61: aload 5
62: invokevirtual org.antlr.analysis.DecisionProbe.reportIncompletelyCoveredAlts:(Lorg/antlr/analysis/DFAState;Ljava/util/Map;)V
63: StackMap locals:
StackMap stack:
aload 3
areturn
end local 8 end local 7 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 64 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 64 1 d Lorg/antlr/analysis/DFAState;
0 64 2 nondeterministicAlts Ljava/util/Set<Ljava/lang/Integer;>;
2 64 3 altToPredicateContextMap Ljava/util/Map<Ljava/lang/Integer;Lorg/antlr/analysis/SemanticContext;>;
4 64 4 altToSetOfContextsMap Ljava/util/Map<Ljava/lang/Integer;Lorg/antlr/misc/OrderedHashSet<Lorg/antlr/analysis/SemanticContext;>;>;
6 7 5 altI Ljava/lang/Integer;
9 64 5 altToLocationsReachableWithoutPredicate Ljava/util/Map<Ljava/lang/Integer;Ljava/util/Set<Lorg/antlr/runtime/Token;>;>;
10 64 6 nondetAltsWithUncoveredConfiguration Ljava/util/Set<Ljava/lang/Integer;>;
11 64 7 numConfigs I
12 25 8 i I
14 23 9 configuration Lorg/antlr/analysis/NFAConfiguration;
15 23 10 altI Ljava/lang/Integer;
20 21 11 predSet Ljava/util/Set<Lorg/antlr/analysis/SemanticContext;>;
26 64 8 incompletelyCoveredAlts Ljava/util/List<Ljava/lang/Integer;>;
28 40 9 altI Ljava/lang/Integer;
29 40 11 contextsForThisAlt Ljava/util/Set<Lorg/antlr/analysis/SemanticContext;>;
34 40 12 combinedContext Lorg/antlr/analysis/SemanticContext;
36 38 13 ctx Lorg/antlr/analysis/SemanticContext;
43 60 9 i I
45 58 10 configuration Lorg/antlr/analysis/NFAConfiguration;
46 58 11 altI Ljava/lang/Integer;
49 58 12 s Lorg/antlr/analysis/NFAState;
54 58 13 locations Ljava/util/Set<Lorg/antlr/runtime/Token;>;
Signature: (Lorg/antlr/analysis/DFAState;Ljava/util/Set<Ljava/lang/Integer;>;)Ljava/util/Map<Ljava/lang/Integer;Lorg/antlr/analysis/SemanticContext;>;
MethodParameters:
Name Flags
d
nondeterministicAlts
protected static org.antlr.analysis.SemanticContext getUnionOfPredicates(java.util.Map<?, org.antlr.analysis.SemanticContext>);
descriptor: (Ljava/util/Map;)Lorg/antlr/analysis/SemanticContext;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aconst_null
astore 2
start local 2 1: aload 0
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 1
start local 1 2: goto 9
3: StackMap locals: java.util.Iterator org.antlr.analysis.SemanticContext
StackMap stack:
aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.antlr.analysis.SemanticContext
astore 3
start local 3 4: aload 2
ifnonnull 7
5: aload 3
astore 2
6: goto 9
7: StackMap locals: org.antlr.analysis.SemanticContext
StackMap stack:
aload 2
aload 3
invokestatic org.antlr.analysis.SemanticContext.or:(Lorg/antlr/analysis/SemanticContext;Lorg/antlr/analysis/SemanticContext;)Lorg/antlr/analysis/SemanticContext;
8: astore 2
end local 3 9: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
10: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 altToPredMap Ljava/util/Map<*Lorg/antlr/analysis/SemanticContext;>;
2 11 1 iter Ljava/util/Iterator<Lorg/antlr/analysis/SemanticContext;>;
1 11 2 unionOfPredicatesFromAllAlts Lorg/antlr/analysis/SemanticContext;
4 9 3 semCtx Lorg/antlr/analysis/SemanticContext;
Signature: (Ljava/util/Map<*Lorg/antlr/analysis/SemanticContext;>;)Lorg/antlr/analysis/SemanticContext;
MethodParameters:
Name Flags
altToPredMap
protected void addPredicateTransitions(org.antlr.analysis.DFAState);
descriptor: (Lorg/antlr/analysis/DFAState;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=9, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 1: aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
invokevirtual org.antlr.misc.OrderedHashSet.size:()I
istore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 8
4: StackMap locals: java.util.List int int
StackMap stack:
aload 1
getfield org.antlr.analysis.DFAState.nfaConfigurations:Lorg/antlr/misc/OrderedHashSet;
iload 4
invokevirtual org.antlr.misc.OrderedHashSet.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 5
start local 5 5: aload 5
getfield org.antlr.analysis.NFAConfiguration.resolveWithPredicate:Z
ifeq 7
6: aload 2
aload 5
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 5 7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
iload 3
if_icmplt 4
end local 4 9: aload 2
10: new org.antlr.analysis.NFAToDFAConverter$1
dup
aload 0
invokespecial org.antlr.analysis.NFAToDFAConverter$1.<init>:(Lorg/antlr/analysis/NFAToDFAConverter;)V
11: invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
12: aload 2
astore 4
start local 4 13: iconst_0
istore 5
start local 5 14: goto 32
15: StackMap locals: org.antlr.analysis.NFAToDFAConverter org.antlr.analysis.DFAState java.util.List int java.util.List int
StackMap stack:
aload 4
iload 5
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.antlr.analysis.NFAConfiguration
astore 6
start local 6 16: aload 1
getfield org.antlr.analysis.DFAState.dfa:Lorg/antlr/analysis/DFA;
aload 6
getfield org.antlr.analysis.NFAConfiguration.alt:I
invokevirtual org.antlr.analysis.DFA.getAcceptState:(I)Lorg/antlr/analysis/DFAState;
astore 7
start local 7 17: aload 7
ifnonnull 30
18: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
invokevirtual org.antlr.analysis.DFA.newState:()Lorg/antlr/analysis/DFAState;
astore 7
19: aload 7
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
getfield org.antlr.analysis.DFA.nfa:Lorg/antlr/analysis/NFA;
aload 6
getfield org.antlr.analysis.NFAConfiguration.state:I
invokevirtual org.antlr.analysis.NFA.getState:(I)Lorg/antlr/analysis/NFAState;
20: aload 6
getfield org.antlr.analysis.NFAConfiguration.alt:I
21: aload 6
getfield org.antlr.analysis.NFAConfiguration.context:Lorg/antlr/analysis/NFAContext;
22: aload 6
getfield org.antlr.analysis.NFAConfiguration.semanticContext:Lorg/antlr/analysis/SemanticContext;
23: invokevirtual org.antlr.analysis.DFAState.addNFAConfiguration:(Lorg/antlr/analysis/NFAState;ILorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/SemanticContext;)Lorg/antlr/analysis/NFAConfiguration;
pop
24: aload 7
iconst_1
invokevirtual org.antlr.analysis.DFAState.setAcceptState:(Z)V
25: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 6
getfield org.antlr.analysis.NFAConfiguration.alt:I
aload 7
invokevirtual org.antlr.analysis.DFA.setAcceptState:(ILorg/antlr/analysis/DFAState;)V
26: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 7
invokevirtual org.antlr.analysis.DFA.addState:(Lorg/antlr/analysis/DFAState;)Lorg/antlr/analysis/DFAState;
astore 8
start local 8 27: aload 7
aload 8
if_acmpeq 30
28: aload 0
getfield org.antlr.analysis.NFAToDFAConverter.dfa:Lorg/antlr/analysis/DFA;
aload 7
getfield org.antlr.analysis.DFAState.stateNumber:I
aload 8
invokevirtual org.antlr.analysis.DFA.setState:(ILorg/antlr/analysis/DFAState;)V
29: aload 8
astore 7
end local 8 30: StackMap locals: org.antlr.analysis.NFAConfiguration org.antlr.analysis.DFAState
StackMap stack:
aload 1
aload 7
new org.antlr.analysis.PredicateLabel
dup
aload 6
getfield org.antlr.analysis.NFAConfiguration.semanticContext:Lorg/antlr/analysis/SemanticContext;
invokespecial org.antlr.analysis.PredicateLabel.<init>:(Lorg/antlr/analysis/SemanticContext;)V
invokevirtual org.antlr.analysis.DFAState.addTransition:(Lorg/antlr/analysis/DFAState;Lorg/antlr/analysis/Label;)I
pop
end local 7 end local 6 31: iinc 5 1
StackMap locals:
StackMap stack:
32: iload 5
aload 4
invokeinterface java.util.List.size:()I
if_icmplt 15
end local 5 33: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 34 1 d Lorg/antlr/analysis/DFAState;
1 34 2 configsWithPreds Ljava/util/List<Lorg/antlr/analysis/NFAConfiguration;>;
2 34 3 numConfigs I
3 9 4 i I
5 7 5 c Lorg/antlr/analysis/NFAConfiguration;
13 34 4 predConfigsSortedByAlt Ljava/util/List<Lorg/antlr/analysis/NFAConfiguration;>;
14 33 5 i I
16 31 6 c Lorg/antlr/analysis/NFAConfiguration;
17 31 7 predDFATarget Lorg/antlr/analysis/DFAState;
27 30 8 existingState Lorg/antlr/analysis/DFAState;
MethodParameters:
Name Flags
d
protected void initContextTrees(int);
descriptor: (I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
anewarray org.antlr.analysis.NFAContext
putfield org.antlr.analysis.NFAToDFAConverter.contextTrees:[Lorg/antlr/analysis/NFAContext;
1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.contextTrees:[Lorg/antlr/analysis/NFAContext;
iload 2
new org.antlr.analysis.NFAContext
dup
aconst_null
aconst_null
invokespecial org.antlr.analysis.NFAContext.<init>:(Lorg/antlr/analysis/NFAContext;Lorg/antlr/analysis/NFAState;)V
aastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield org.antlr.analysis.NFAToDFAConverter.contextTrees:[Lorg/antlr/analysis/NFAContext;
arraylength
if_icmplt 3
end local 2 6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/antlr/analysis/NFAToDFAConverter;
0 7 1 numberOfAlts I
2 6 2 i I
MethodParameters:
Name Flags
numberOfAlts
public static int max(java.util.Set<java.lang.Integer>);
descriptor: (Ljava/util/Set;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: ldc -2147483648
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
istore 1
start local 1 3: iconst_0
istore 2
start local 2 4: aload 0
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 13
StackMap locals: java.util.Set int int top java.util.Iterator
StackMap stack:
5: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Integer
astore 3
start local 3 6: iinc 1 1
7: aload 3
astore 5
start local 5 8: iload 1
iconst_1
if_icmpne 11
9: aload 5
invokevirtual java.lang.Integer.intValue:()I
istore 2
10: goto 13
11: StackMap locals: java.util.Set int int java.lang.Integer java.util.Iterator java.lang.Integer
StackMap stack:
aload 5
invokevirtual java.lang.Integer.intValue:()I
iload 2
if_icmple 13
12: aload 5
invokevirtual java.lang.Integer.intValue:()I
istore 2
end local 5 end local 3 13: StackMap locals: java.util.Set int int top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
14: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 s Ljava/util/Set<Ljava/lang/Integer;>;
3 15 1 i I
4 15 2 m I
6 13 3 value Ljava/lang/Integer;
8 13 5 I Ljava/lang/Integer;
Signature: (Ljava/util/Set<Ljava/lang/Integer;>;)I
MethodParameters:
Name Flags
s
}
SourceFile: "NFAToDFAConverter.java"
NestMembers:
org.antlr.analysis.NFAToDFAConverter$1
InnerClasses:
org.antlr.analysis.NFAToDFAConverter$1
public TruePredicate = org.antlr.analysis.SemanticContext$TruePredicate of org.antlr.analysis.SemanticContext