antlr

Class AlternativeBlock

Known Direct Subclasses:
BlockWithImpliedExitPath, RuleBlock, SynPredBlock, TreeElement

(package private) class AlternativeBlock
extends AlternativeElement

A list of alternatives

Field Summary

protected int
ID
protected Vector
alternatives
protected int
alti
protected int
altj
protected int
analysisAlt
protected boolean
doAutoGen
protected boolean
generateAmbigWarnings
(package private) boolean
greedy
(package private) boolean
greedySet
protected boolean
hasASynPred
protected boolean
hasAnAction
protected String
initAction
protected String
label
protected static int
nblks
(package private) boolean
not
protected boolean
warnWhenFollowAmbig

Fields inherited from class antlr.AlternativeElement

autoGenType, enclosingRuleName, next

Fields inherited from class antlr.GrammarElement

AUTO_GEN_BANG, AUTO_GEN_CARET, AUTO_GEN_NONE, column, grammar, line

Constructor Summary

AlternativeBlock(Grammar g)
AlternativeBlock(Grammar g, Token start, boolean not)

Method Summary

void
addAlternative(Alternative alt)
void
generate()
Alternative
getAlternativeAt(int i)
Vector
getAlternatives()
boolean
getAutoGen()
String
getInitAction()
String
getLabel()
Lookahead
look(int k)
void
prepareForAnalysis()
void
removeTrackingOfRuleRefs(Grammar g)
Walk the syntactic predicate and, for a rule ref R, remove the ref from the list of FOLLOW references for R (stored in the symbol table.
void
setAlternatives(Vector v)
void
setAutoGen(boolean doAutoGen_)
void
setInitAction(String initAction_)
void
setLabel(String label_)
void
setOption(Token key, Token value)
String
toString()

Methods inherited from class antlr.AlternativeElement

getAutoGenType, getLabel, setAutoGenType, setLabel

Methods inherited from class antlr.GrammarElement

generate, getColumn, getLine, look, toString

Field Details

ID

protected int ID

alternatives

protected Vector alternatives

alti

protected int alti

altj

protected int altj

analysisAlt

protected int analysisAlt

doAutoGen

protected boolean doAutoGen

generateAmbigWarnings

protected boolean generateAmbigWarnings

greedy

(package private)  boolean greedy

greedySet

(package private)  boolean greedySet

hasASynPred

protected boolean hasASynPred

hasAnAction

protected boolean hasAnAction

initAction

protected String initAction

label

protected String label

nblks

protected static int nblks

not

(package private)  boolean not

warnWhenFollowAmbig

protected boolean warnWhenFollowAmbig

Constructor Details

AlternativeBlock

public AlternativeBlock(Grammar g)

AlternativeBlock

public AlternativeBlock(Grammar g,
                        Token start,
                        boolean not)

Method Details

addAlternative

public void addAlternative(Alternative alt)

generate

public void generate()
Overrides:
generate in interface GrammarElement

getAlternativeAt

public Alternative getAlternativeAt(int i)

getAlternatives

public Vector getAlternatives()

getAutoGen

public boolean getAutoGen()

getInitAction

public String getInitAction()

getLabel

public String getLabel()
Overrides:
getLabel in interface AlternativeElement

look

public Lookahead look(int k)
Overrides:
look in interface GrammarElement

prepareForAnalysis

public void prepareForAnalysis()

removeTrackingOfRuleRefs

public void removeTrackingOfRuleRefs(Grammar g)
Walk the syntactic predicate and, for a rule ref R, remove the ref from the list of FOLLOW references for R (stored in the symbol table.

setAlternatives

public void setAlternatives(Vector v)

setAutoGen

public void setAutoGen(boolean doAutoGen_)

setInitAction

public void setInitAction(String initAction_)

setLabel

public void setLabel(String label_)
Overrides:
setLabel in interface AlternativeElement

setOption

public void setOption(Token key,
                      Token value)

toString

public String toString()
Overrides:
toString in interface GrammarElement