Package antlr
Class MakeGrammar
- java.lang.Object
-
- antlr.DefineGrammarSymbols
-
- antlr.MakeGrammar
-
- All Implemented Interfaces:
ANTLRGrammarParseBehavior
public class MakeGrammar extends DefineGrammarSymbols
-
-
Field Summary
Fields Modifier and Type Field Description protected Stackblocks(package private) ExceptionSpeccurrentExceptionSpecprotected booleangrammarErrorprotected RuleRefElementlastRuleRefprotected intnestedprotected RuleBlockruleBlockprotected RuleEndElementruleEnd-
Fields inherited from class antlr.DefineGrammarSymbols
analyzer, args, DEFAULT_TOKENMANAGER_NAME, grammar, grammars, headerActions, language, numLexers, numParsers, numTreeParsers, thePreambleAction, tokenManagers, tool
-
-
Constructor Summary
Constructors Constructor Description MakeGrammar(Tool tool_, java.lang.String[] args_, LLkAnalyzer analyzer_)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidabortGrammar()Abort the processing of a grammar (due to syntax errors)protected voidaddElementToCurrentAlt(AlternativeElement e)voidbeginAlt(boolean doAutoGen_)voidbeginChildList()voidbeginExceptionGroup()Add an exception group to a rule (currently a no-op)voidbeginExceptionSpec(Token label)Add an exception spec to an exception group or rule blockvoidbeginSubRule(Token label, Token start, boolean not)voidbeginTree(Token tok)BlockContextcontext()static RuleBlockcreateNextTokenRule(Grammar g, Vector lexRules, java.lang.String rname)Used to build nextToken() for the lexer.voiddefineRuleName(Token r, java.lang.String access, boolean ruleAutoGen, java.lang.String docComment)Define a lexer or parser rulevoidendAlt()voidendChildList()voidendExceptionGroup()voidendExceptionSpec()voidendGrammar()Called at the end of processing a grammarvoidendRule(java.lang.String rule)voidendSubRule()voidendTree()voidhasError()Remember that a major error occured in the grammarvoidnoAutoGenSubRule()voidoneOrMoreSubRule()voidoptionalSubRule()voidrefAction(Token action)voidrefArgAction(Token action)voidrefCharLiteral(Token lit, Token label, boolean inverted, int autoGenType, boolean lastInRule)voidrefCharRange(Token t1, Token t2, Token label, int autoGenType, boolean lastInRule)voidrefElementOption(Token option, Token value)voidrefExceptionHandler(Token exTypeAndName, Token action)Add an exception handler to an exception specvoidrefInitAction(Token action)voidrefMemberAction(Token act)voidrefPreambleAction(Token act)voidrefReturnAction(Token returnAction)voidrefRule(Token idAssign, Token r, Token label, Token args, int autoGenType)voidrefSemPred(Token pred)voidrefStringLiteral(Token lit, Token label, int autoGenType, boolean lastInRule)voidrefToken(Token idAssign, Token t, Token label, Token args, boolean inverted, int autoGenType, boolean lastInRule)Reference a tokenvoidrefTokenRange(Token t1, Token t2, Token label, int autoGenType, boolean lastInRule)voidrefTokensSpecElementOption(Token tok, Token option, Token value)voidrefTreeSpecifier(Token treeSpec)voidrefWildcard(Token t, Token label, int autoGenType)voidreset()Get ready to process a new grammarvoidsetArgOfRuleRef(Token argAction)static voidsetBlock(AlternativeBlock b, AlternativeBlock src)voidsetRuleOption(Token key, Token value)voidsetSubruleOption(Token key, Token value)voidsetUserExceptions(java.lang.String thr)voidsynPred()voidzeroOrMoreSubRule()-
Methods inherited from class antlr.DefineGrammarSymbols
_refStringLiteral, _refToken, defineToken, endOptions, getHeaderAction, getHeaderActionLine, noASTSubRule, refHeaderAction, setCharVocabulary, setFileOption, setGrammarOption, startLexer, startParser, startTreeWalker
-
-
-
-
Field Detail
-
blocks
protected Stack blocks
-
lastRuleRef
protected RuleRefElement lastRuleRef
-
ruleEnd
protected RuleEndElement ruleEnd
-
ruleBlock
protected RuleBlock ruleBlock
-
nested
protected int nested
-
grammarError
protected boolean grammarError
-
currentExceptionSpec
ExceptionSpec currentExceptionSpec
-
-
Constructor Detail
-
MakeGrammar
public MakeGrammar(Tool tool_, java.lang.String[] args_, LLkAnalyzer analyzer_)
-
-
Method Detail
-
abortGrammar
public void abortGrammar()
Abort the processing of a grammar (due to syntax errors)- Specified by:
abortGrammarin interfaceANTLRGrammarParseBehavior- Overrides:
abortGrammarin classDefineGrammarSymbols
-
addElementToCurrentAlt
protected void addElementToCurrentAlt(AlternativeElement e)
-
beginAlt
public void beginAlt(boolean doAutoGen_)
- Specified by:
beginAltin interfaceANTLRGrammarParseBehavior- Overrides:
beginAltin classDefineGrammarSymbols
-
beginChildList
public void beginChildList()
- Specified by:
beginChildListin interfaceANTLRGrammarParseBehavior- Overrides:
beginChildListin classDefineGrammarSymbols
-
beginExceptionGroup
public void beginExceptionGroup()
Add an exception group to a rule (currently a no-op)- Specified by:
beginExceptionGroupin interfaceANTLRGrammarParseBehavior- Overrides:
beginExceptionGroupin classDefineGrammarSymbols
-
beginExceptionSpec
public void beginExceptionSpec(Token label)
Add an exception spec to an exception group or rule block- Specified by:
beginExceptionSpecin interfaceANTLRGrammarParseBehavior- Overrides:
beginExceptionSpecin classDefineGrammarSymbols
-
beginSubRule
public void beginSubRule(Token label, Token start, boolean not)
- Specified by:
beginSubRulein interfaceANTLRGrammarParseBehavior- Overrides:
beginSubRulein classDefineGrammarSymbols
-
beginTree
public void beginTree(Token tok) throws SemanticException
- Specified by:
beginTreein interfaceANTLRGrammarParseBehavior- Overrides:
beginTreein classDefineGrammarSymbols- Throws:
SemanticException
-
context
public BlockContext context()
-
createNextTokenRule
public static RuleBlock createNextTokenRule(Grammar g, Vector lexRules, java.lang.String rname)
Used to build nextToken() for the lexer. This builds a rule which has every "public" rule in the given Vector of rules as it's alternate. Each rule ref generates a Token object.- Parameters:
g- The Grammar that is being processedlexRules- A vector of lexer rules that will be used to create an alternate block.rname- The name of the resulting rule.
-
defineRuleName
public void defineRuleName(Token r, java.lang.String access, boolean ruleAutoGen, java.lang.String docComment) throws SemanticException
Description copied from class:DefineGrammarSymbolsDefine a lexer or parser rule- Specified by:
defineRuleNamein interfaceANTLRGrammarParseBehavior- Overrides:
defineRuleNamein classDefineGrammarSymbols- Throws:
SemanticException
-
endAlt
public void endAlt()
- Specified by:
endAltin interfaceANTLRGrammarParseBehavior- Overrides:
endAltin classDefineGrammarSymbols
-
endChildList
public void endChildList()
- Specified by:
endChildListin interfaceANTLRGrammarParseBehavior- Overrides:
endChildListin classDefineGrammarSymbols
-
endExceptionGroup
public void endExceptionGroup()
- Specified by:
endExceptionGroupin interfaceANTLRGrammarParseBehavior- Overrides:
endExceptionGroupin classDefineGrammarSymbols
-
endExceptionSpec
public void endExceptionSpec()
- Specified by:
endExceptionSpecin interfaceANTLRGrammarParseBehavior- Overrides:
endExceptionSpecin classDefineGrammarSymbols
-
endGrammar
public void endGrammar()
Called at the end of processing a grammar- Specified by:
endGrammarin interfaceANTLRGrammarParseBehavior- Overrides:
endGrammarin classDefineGrammarSymbols
-
endRule
public void endRule(java.lang.String rule)
- Specified by:
endRulein interfaceANTLRGrammarParseBehavior- Overrides:
endRulein classDefineGrammarSymbols
-
endSubRule
public void endSubRule()
- Specified by:
endSubRulein interfaceANTLRGrammarParseBehavior- Overrides:
endSubRulein classDefineGrammarSymbols
-
endTree
public void endTree()
- Specified by:
endTreein interfaceANTLRGrammarParseBehavior- Overrides:
endTreein classDefineGrammarSymbols
-
hasError
public void hasError()
Remember that a major error occured in the grammar- Specified by:
hasErrorin interfaceANTLRGrammarParseBehavior- Overrides:
hasErrorin classDefineGrammarSymbols
-
noAutoGenSubRule
public void noAutoGenSubRule()
-
oneOrMoreSubRule
public void oneOrMoreSubRule()
- Specified by:
oneOrMoreSubRulein interfaceANTLRGrammarParseBehavior- Overrides:
oneOrMoreSubRulein classDefineGrammarSymbols
-
optionalSubRule
public void optionalSubRule()
- Specified by:
optionalSubRulein interfaceANTLRGrammarParseBehavior- Overrides:
optionalSubRulein classDefineGrammarSymbols
-
refAction
public void refAction(Token action)
- Specified by:
refActionin interfaceANTLRGrammarParseBehavior- Overrides:
refActionin classDefineGrammarSymbols
-
setUserExceptions
public void setUserExceptions(java.lang.String thr)
- Specified by:
setUserExceptionsin interfaceANTLRGrammarParseBehavior- Overrides:
setUserExceptionsin classDefineGrammarSymbols
-
refArgAction
public void refArgAction(Token action)
- Specified by:
refArgActionin interfaceANTLRGrammarParseBehavior- Overrides:
refArgActionin classDefineGrammarSymbols
-
refCharLiteral
public void refCharLiteral(Token lit, Token label, boolean inverted, int autoGenType, boolean lastInRule)
- Specified by:
refCharLiteralin interfaceANTLRGrammarParseBehavior- Overrides:
refCharLiteralin classDefineGrammarSymbols
-
refCharRange
public void refCharRange(Token t1, Token t2, Token label, int autoGenType, boolean lastInRule)
- Specified by:
refCharRangein interfaceANTLRGrammarParseBehavior- Overrides:
refCharRangein classDefineGrammarSymbols
-
refTokensSpecElementOption
public void refTokensSpecElementOption(Token tok, Token option, Token value)
- Specified by:
refTokensSpecElementOptionin interfaceANTLRGrammarParseBehavior- Overrides:
refTokensSpecElementOptionin classDefineGrammarSymbols
-
refElementOption
public void refElementOption(Token option, Token value)
- Specified by:
refElementOptionin interfaceANTLRGrammarParseBehavior- Overrides:
refElementOptionin classDefineGrammarSymbols
-
refExceptionHandler
public void refExceptionHandler(Token exTypeAndName, Token action)
Add an exception handler to an exception spec- Specified by:
refExceptionHandlerin interfaceANTLRGrammarParseBehavior- Overrides:
refExceptionHandlerin classDefineGrammarSymbols
-
refInitAction
public void refInitAction(Token action)
- Specified by:
refInitActionin interfaceANTLRGrammarParseBehavior- Overrides:
refInitActionin classDefineGrammarSymbols
-
refMemberAction
public void refMemberAction(Token act)
- Specified by:
refMemberActionin interfaceANTLRGrammarParseBehavior- Overrides:
refMemberActionin classDefineGrammarSymbols
-
refPreambleAction
public void refPreambleAction(Token act)
- Specified by:
refPreambleActionin interfaceANTLRGrammarParseBehavior- Overrides:
refPreambleActionin classDefineGrammarSymbols
-
refReturnAction
public void refReturnAction(Token returnAction)
- Specified by:
refReturnActionin interfaceANTLRGrammarParseBehavior- Overrides:
refReturnActionin classDefineGrammarSymbols
-
refRule
public void refRule(Token idAssign, Token r, Token label, Token args, int autoGenType)
- Specified by:
refRulein interfaceANTLRGrammarParseBehavior- Overrides:
refRulein classDefineGrammarSymbols
-
refSemPred
public void refSemPred(Token pred)
- Specified by:
refSemPredin interfaceANTLRGrammarParseBehavior- Overrides:
refSemPredin classDefineGrammarSymbols
-
refStringLiteral
public void refStringLiteral(Token lit, Token label, int autoGenType, boolean lastInRule)
- Specified by:
refStringLiteralin interfaceANTLRGrammarParseBehavior- Overrides:
refStringLiteralin classDefineGrammarSymbols
-
refToken
public void refToken(Token idAssign, Token t, Token label, Token args, boolean inverted, int autoGenType, boolean lastInRule)
Description copied from class:DefineGrammarSymbolsReference a token- Specified by:
refTokenin interfaceANTLRGrammarParseBehavior- Overrides:
refTokenin classDefineGrammarSymbols
-
refTokenRange
public void refTokenRange(Token t1, Token t2, Token label, int autoGenType, boolean lastInRule)
- Specified by:
refTokenRangein interfaceANTLRGrammarParseBehavior- Overrides:
refTokenRangein classDefineGrammarSymbols
-
refTreeSpecifier
public void refTreeSpecifier(Token treeSpec)
- Specified by:
refTreeSpecifierin interfaceANTLRGrammarParseBehavior- Overrides:
refTreeSpecifierin classDefineGrammarSymbols
-
refWildcard
public void refWildcard(Token t, Token label, int autoGenType)
- Specified by:
refWildcardin interfaceANTLRGrammarParseBehavior- Overrides:
refWildcardin classDefineGrammarSymbols
-
reset
public void reset()
Get ready to process a new grammar- Overrides:
resetin classDefineGrammarSymbols
-
setArgOfRuleRef
public void setArgOfRuleRef(Token argAction)
- Specified by:
setArgOfRuleRefin interfaceANTLRGrammarParseBehavior- Overrides:
setArgOfRuleRefin classDefineGrammarSymbols
-
setBlock
public static void setBlock(AlternativeBlock b, AlternativeBlock src)
-
setRuleOption
public void setRuleOption(Token key, Token value)
- Specified by:
setRuleOptionin interfaceANTLRGrammarParseBehavior- Overrides:
setRuleOptionin classDefineGrammarSymbols
-
setSubruleOption
public void setSubruleOption(Token key, Token value)
- Specified by:
setSubruleOptionin interfaceANTLRGrammarParseBehavior- Overrides:
setSubruleOptionin classDefineGrammarSymbols
-
synPred
public void synPred()
- Specified by:
synPredin interfaceANTLRGrammarParseBehavior- Overrides:
synPredin classDefineGrammarSymbols
-
zeroOrMoreSubRule
public void zeroOrMoreSubRule()
- Specified by:
zeroOrMoreSubRulein interfaceANTLRGrammarParseBehavior- Overrides:
zeroOrMoreSubRulein classDefineGrammarSymbols
-
-