public class LeftRecursiveRule extends Rule
| Modifier and Type | Field and Description |
|---|---|
List |
leftRecursiveRuleRefLabels
Did we delete any labels on direct left-recur refs? Points at ID of ^(= ID el)
|
RuleAST |
originalAST
|
OrderedHashMap |
recOpAlts
|
List |
recPrimaryAlts
|
actionIndex, actions, alt, args, ast, exceptions, finallyAction, g, index, isStartRule, locals, mode, modifiers, name, namedActions, numberOfAlts, predefinedRulePropertiesDict, retvals, validLexerCommands| Constructor and Description |
|---|
LeftRecursiveRule(Grammar
|
| Modifier and Type | Method and Description |
|---|---|
Map |
getAltLabels()
Get -> labels from those alts we deleted for left-recursive rules.
|
RuleAST |
getOriginalAST()
|
int |
getOriginalNumberOfAlts()
Used for recursive rules (subclass), which have 1 alt, but many original alts
|
int[] |
getPrimaryAlts()
Return an array that maps predicted alt from primary decision to original alt of rule.
|
int[] |
getRecursiveOpAlts()
Return an array that maps predicted alt from recursive op decision to original alt of rule.
|
List |
getUnlabeledAltASTs()
|
boolean |
hasAltSpecificContexts()
|
defineActionInAlt, defineLexerAction, definePredicateInAlt, equals, getAnyLabelDef, getElementLabelDefs, getElementLabelNames, getPredefinedScope, getTokenRefs, hashCode, isFragment, resolveRetvalOrProperty, resolvesToAttributeDict, resolvesToLabel, resolvesToListLabel, resolvesToToken, resolveToAttribute, resolveToAttribute, resolveToRule, toStringpublic List<LeftRecursiveRuleAltInfo > recPrimaryAlts
public OrderedHashMap<Integer ,LeftRecursiveRuleAltInfo > recOpAlts
public RuleASToriginalAST
public List<<any> > leftRecursiveRuleRefLabels
public boolean hasAltSpecificContexts()
public int getOriginalNumberOfAlts()
Rule
public RuleASTgetOriginalAST()
public int[] getPrimaryAlts()
public int[] getRecursiveOpAlts()