Public Member Functions | |
GrammarElement (Grammar g) | |
GrammarElement (Grammar g, Token start) | |
void | generate () |
int | getLine () |
int | getColumn () |
Lookahead | look (int k) |
abstract String | toString () |
Static Public Attributes | |
static final int | AUTO_GEN_NONE = 1 |
static final int | AUTO_GEN_CARET = 2 |
static final int | AUTO_GEN_BANG = 3 |
Protected Attributes | |
Grammar | grammar |
int | line |
int | column |
A GrammarElement is a generic node in our data structure that holds a grammar in memory. This data structure can be used for static analysis or for dynamic analysis (during parsing). Every node must know which grammar owns it, how to generate code, and how to do analysis.
antlr.GrammarElement.GrammarElement | ( | Grammar | g | ) |
References antlr.GrammarElement.column, antlr.GrammarElement.grammar, and antlr.GrammarElement.line.
void antlr.GrammarElement.generate | ( | ) |
Reimplemented in antlr.ActionElement, antlr.AlternativeBlock, antlr.CharLiteralElement, antlr.CharRangeElement, antlr.OneOrMoreBlock, antlr.RuleBlock, antlr.RuleRefElement, antlr.StringLiteralElement, antlr.SynPredBlock, antlr.TokenRangeElement, antlr.TokenRefElement, antlr.TreeElement, antlr.WildcardElement, and antlr.ZeroOrMoreBlock.
Referenced by antlr.PythonCodeGenerator.gen(), antlr.JavaCodeGenerator.gen(), antlr.CSharpCodeGenerator.gen(), antlr.CppCodeGenerator.gen(), antlr.PythonCodeGenerator.genAlt(), antlr.JavaCodeGenerator.genAlt(), antlr.HTMLCodeGenerator.genAlt(), antlr.DocBookCodeGenerator.genAlt(), antlr.CSharpCodeGenerator.genAlt(), and antlr.CppCodeGenerator.genAlt().
int antlr.GrammarElement.getColumn | ( | ) |
References antlr.GrammarElement.column.
Referenced by antlr.LLkAnalyzer.deterministic(), antlr.LLkAnalyzer.deterministicImpliedPath(), antlr.MakeGrammar.endExceptionSpec(), antlr.MakeGrammar.endSubRule(), antlr.PythonCodeGenerator.gen(), antlr.JavaCodeGenerator.gen(), antlr.CSharpCodeGenerator.gen(), antlr.CppCodeGenerator.gen(), antlr.PythonCodeGenerator.genAlt(), antlr.JavaCodeGenerator.genAlt(), antlr.CSharpCodeGenerator.genAlt(), antlr.CppCodeGenerator.genAlt(), antlr.PythonCodeGenerator.genCommonBlock(), antlr.JavaCodeGenerator.genCommonBlock(), antlr.CSharpCodeGenerator.genCommonBlock(), antlr.CppCodeGenerator.genCommonBlock(), antlr.PythonCodeGenerator.genRule(), antlr.JavaCodeGenerator.genRule(), antlr.CSharpCodeGenerator.genRule(), antlr.CppCodeGenerator.genRule(), antlr.CppCodeGenerator.genRuleHeader(), antlr.CppCodeGenerator.getASTCreateString(), antlr.LLkAnalyzer.look(), antlr.MakeGrammar.oneOrMoreSubRule(), antlr.MakeGrammar.optionalSubRule(), antlr.MakeGrammar.synPred(), antlr.DefaultToolErrorHandler.warnAltAmbiguity(), antlr.DefaultToolErrorHandler.warnAltExitAmbiguity(), and antlr.MakeGrammar.zeroOrMoreSubRule().
int antlr.GrammarElement.getLine | ( | ) |
References antlr.GrammarElement.line.
Referenced by antlr.LLkAnalyzer.deterministic(), antlr.LLkAnalyzer.deterministicImpliedPath(), antlr.MakeGrammar.endExceptionSpec(), antlr.MakeGrammar.endSubRule(), antlr.PythonCodeGenerator.gen(), antlr.JavaCodeGenerator.gen(), antlr.CSharpCodeGenerator.gen(), antlr.CppCodeGenerator.gen(), antlr.PythonCodeGenerator.genAlt(), antlr.JavaCodeGenerator.genAlt(), antlr.CSharpCodeGenerator.genAlt(), antlr.CppCodeGenerator.genAlt(), antlr.PythonCodeGenerator.genBlockInitAction(), antlr.JavaCodeGenerator.genBlockInitAction(), antlr.CSharpCodeGenerator.genBlockInitAction(), antlr.JavaCodeGenerator.genBlockPreamble(), antlr.PythonCodeGenerator.genCommonBlock(), antlr.JavaCodeGenerator.genCommonBlock(), antlr.CSharpCodeGenerator.genCommonBlock(), antlr.CppCodeGenerator.genCommonBlock(), antlr.CppCodeGenerator.genLineNo(), antlr.JavaCodeGenerator.genMatchUsingAtomText(), antlr.JavaCodeGenerator.genMatchUsingAtomTokenType(), antlr.JavaCodeGenerator.genNextToken(), antlr.PythonCodeGenerator.genRule(), antlr.JavaCodeGenerator.genRule(), antlr.CSharpCodeGenerator.genRule(), antlr.CppCodeGenerator.genRule(), antlr.CppCodeGenerator.genRuleHeader(), antlr.JavaCodeGenerator.genSynPred(), antlr.CppCodeGenerator.getASTCreateString(), antlr.LLkAnalyzer.look(), antlr.MakeGrammar.oneOrMoreSubRule(), antlr.MakeGrammar.optionalSubRule(), antlr.MakeGrammar.synPred(), antlr.DefaultToolErrorHandler.warnAltAmbiguity(), antlr.DefaultToolErrorHandler.warnAltExitAmbiguity(), and antlr.MakeGrammar.zeroOrMoreSubRule().
Lookahead antlr.GrammarElement.look | ( | int | k | ) |
Reimplemented in antlr.ActionElement, antlr.AlternativeBlock, antlr.BlockEndElement, antlr.CharLiteralElement, antlr.CharRangeElement, antlr.OneOrMoreBlock, antlr.RuleBlock, antlr.RuleEndElement, antlr.RuleRefElement, antlr.StringLiteralElement, antlr.SynPredBlock, antlr.TokenRangeElement, antlr.TokenRefElement, antlr.TreeElement, antlr.WildcardElement, and antlr.ZeroOrMoreBlock.
Referenced by antlr.LLkAnalyzer.deterministic(), antlr.LLkAnalyzer.deterministicImpliedPath(), antlr.LLkAnalyzer.FOLLOW(), and antlr.LLkAnalyzer.look().
abstract String antlr.GrammarElement.toString | ( | ) | [pure virtual] |
Implemented in antlr.ActionElement, antlr.AlternativeBlock, antlr.BlockEndElement, antlr.CharRangeElement, antlr.GrammarAtom, antlr.OneOrMoreBlock, antlr.RuleBlock, antlr.RuleEndElement, antlr.RuleRefElement, antlr.SynPredBlock, antlr.TokenRangeElement, antlr.TreeElement, antlr.WildcardElement, and antlr.ZeroOrMoreBlock.
Referenced by antlr.LLkAnalyzer.FOLLOW(), and antlr.DefaultToolErrorHandler.warnAltAmbiguity().
final int antlr.GrammarElement.AUTO_GEN_BANG = 3 [static] |
final int antlr.GrammarElement.AUTO_GEN_CARET = 2 [static] |
final int antlr.GrammarElement.AUTO_GEN_NONE = 1 [static] |
Referenced by antlr.CharLiteralElement.CharLiteralElement().
int antlr.GrammarElement.column [protected] |
Grammar antlr.GrammarElement.grammar [protected] |
Referenced by antlr.RuleBlock.addExceptionSpec(), antlr.ZeroOrMoreBlock.generate(), antlr.WildcardElement.generate(), antlr.TreeElement.generate(), antlr.TokenRefElement.generate(), antlr.TokenRangeElement.generate(), antlr.SynPredBlock.generate(), antlr.StringLiteralElement.generate(), antlr.RuleRefElement.generate(), antlr.RuleBlock.generate(), antlr.OneOrMoreBlock.generate(), antlr.CharRangeElement.generate(), antlr.CharLiteralElement.generate(), antlr.AlternativeBlock.generate(), antlr.ActionElement.generate(), antlr.GrammarElement.GrammarElement(), antlr.ZeroOrMoreBlock.look(), antlr.WildcardElement.look(), antlr.TreeElement.look(), antlr.TokenRefElement.look(), antlr.TokenRangeElement.look(), antlr.SynPredBlock.look(), antlr.StringLiteralElement.look(), antlr.RuleRefElement.look(), antlr.RuleEndElement.look(), antlr.RuleBlock.look(), antlr.OneOrMoreBlock.look(), antlr.CharRangeElement.look(), antlr.CharLiteralElement.look(), antlr.BlockEndElement.look(), antlr.AlternativeBlock.look(), antlr.ActionElement.look(), antlr.RuleBlock.prepareForAnalysis(), antlr.AlternativeBlock.prepareForAnalysis(), antlr.AlternativeBlock.removeTrackingOfRuleRefs(), antlr.RuleBlock.setOption(), antlr.GrammarAtom.setOption(), antlr.AlternativeBlock.setOption(), antlr.StringLiteralElement.StringLiteralElement(), antlr.TokenRangeElement.TokenRangeElement(), antlr.TokenRefElement.TokenRefElement(), antlr.RuleBlock.toString(), and antlr.AlternativeBlock.toString().
int antlr.GrammarElement.line [protected] |
Referenced by antlr.ActionElement.ActionElement(), antlr.CharLiteralElement.CharLiteralElement(), antlr.CharRangeElement.CharRangeElement(), antlr.PythonCodeGenerator.gen(), antlr.JavaCodeGenerator.gen(), antlr.CSharpCodeGenerator.gen(), antlr.CppCodeGenerator.gen(), antlr.CppCodeGenerator.genBlockInitAction(), antlr.PythonCodeGenerator.genCommonBlock(), antlr.JavaCodeGenerator.genCommonBlock(), antlr.CSharpCodeGenerator.genCommonBlock(), antlr.CppCodeGenerator.genCommonBlock(), antlr.PythonCodeGenerator.genRule(), antlr.JavaCodeGenerator.genRule(), antlr.CSharpCodeGenerator.genRule(), antlr.CppCodeGenerator.genRule(), antlr.GrammarElement.getLine(), antlr.GrammarElement.GrammarElement(), antlr.MakeGrammar.setBlock(), antlr.StringLiteralElement.StringLiteralElement(), antlr.TokenRangeElement.TokenRangeElement(), antlr.TokenRefElement.TokenRefElement(), and antlr.WildcardElement.WildcardElement().