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