|
Home |
Download |
News |
Wiki |
About ANTLR |
Feedback |
Support |
Bugs
|
|
|
Latest version is 2.7.7. Download now! » |
|
|
CodeGenerator
antlr
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Field Summary | |
static java.lang.String |
TokenTypesFileExt
|
static java.lang.String |
TokenTypesFileSuffix
|
| Constructor Summary | |
CodeGenerator()
Construct code generator base class |
|
| Method Summary | |
static java.lang.String |
decodeLexerRuleName(java.lang.String id)
|
static boolean |
elementsAreRange(int[] elems)
Test if a set element array represents a contiguous range. |
static java.lang.String |
encodeLexerRuleName(java.lang.String id)
|
abstract void |
gen()
Generate the code for all grammars |
abstract void |
gen(antlr.ActionElement action)
Generate code for the given grammar element. |
abstract void |
gen(antlr.AlternativeBlock blk)
Generate code for the given grammar element. |
abstract void |
gen(antlr.BlockEndElement end)
Generate code for the given grammar element. |
abstract void |
gen(antlr.CharLiteralElement atom)
Generate code for the given grammar element. |
abstract void |
gen(antlr.CharRangeElement r)
Generate code for the given grammar element. |
abstract void |
gen(antlr.LexerGrammar g)
Generate the code for a parser |
abstract void |
gen(antlr.OneOrMoreBlock blk)
Generate code for the given grammar element. |
abstract void |
gen(antlr.ParserGrammar g)
Generate the code for a parser |
abstract void |
gen(antlr.RuleRefElement rr)
Generate code for the given grammar element. |
abstract void |
gen(antlr.StringLiteralElement atom)
Generate code for the given grammar element. |
abstract void |
gen(antlr.TokenRangeElement r)
Generate code for the given grammar element. |
abstract void |
gen(antlr.TokenRefElement atom)
Generate code for the given grammar element. |
abstract void |
gen(antlr.TreeElement t)
Generate code for the given grammar element. |
abstract void |
gen(antlr.TreeWalkerGrammar g)
Generate the code for a parser |
abstract void |
gen(antlr.WildcardElement wc)
Generate code for the given grammar element. |
abstract void |
gen(antlr.ZeroOrMoreBlock blk)
Generate code for the given grammar element. |
abstract java.lang.String |
getASTCreateString(antlr.GrammarAtom atom,
java.lang.String str)
Get a string for an expression to generate creating of an AST node |
abstract java.lang.String |
getASTCreateString(Vector v)
Get a string for an expression to generate creation of an AST subtree. |
java.lang.String |
getFIRSTBitSet(java.lang.String ruleName,
int k)
|
java.lang.String |
getFOLLOWBitSet(java.lang.String ruleName,
int k)
|
abstract java.lang.String |
mapTreeId(java.lang.String id,
ActionTransInfo tInfo)
Map an identifier to it's corresponding tree-node variable. |
java.lang.String |
processStringForASTConstructor(java.lang.String str)
Process a string for an simple expression for use in xx/action.g it is used to cast simple tokens/references to the right type for the generated language. |
static java.lang.String |
reverseLexerRuleName(java.lang.String id)
|
void |
setAnalyzer(LLkGrammarAnalyzer analyzer_)
|
void |
setBehavior(DefineGrammarSymbols behavior_)
|
void |
setTool(Tool tool)
|
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
public static java.lang.String TokenTypesFileSuffix
public static java.lang.String TokenTypesFileExt
| Constructor Detail |
public CodeGenerator()
| Method Detail |
public static boolean elementsAreRange(int[] elems)
elems - The array of elements representing the set, usually from BitSet.toArray().
public abstract void gen()
public abstract void gen(antlr.ActionElement action)
action - The {...} action to generatepublic abstract void gen(antlr.AlternativeBlock blk)
blk - The "x|y|z|..." block to generatepublic abstract void gen(antlr.BlockEndElement end)
end - The block-end element to generate. Block-end
elements are synthesized by the grammar parser to represent
the end of a block.public abstract void gen(antlr.CharLiteralElement atom)
atom - The character literal reference to generatepublic abstract void gen(antlr.CharRangeElement r)
r - The character-range reference to generate
public abstract void gen(antlr.LexerGrammar g)
throws java.io.IOException
java.io.IOExceptionpublic abstract void gen(antlr.OneOrMoreBlock blk)
blk - The (...)+ block to generate
public abstract void gen(antlr.ParserGrammar g)
throws java.io.IOException
java.io.IOExceptionpublic abstract void gen(antlr.RuleRefElement rr)
rr - The rule-reference to generatepublic abstract void gen(antlr.StringLiteralElement atom)
atom - The string-literal reference to generatepublic abstract void gen(antlr.TokenRangeElement r)
r - The token-range reference to generatepublic abstract void gen(antlr.TokenRefElement atom)
atom - The token-reference to generatepublic abstract void gen(antlr.TreeElement t)
public abstract void gen(antlr.TreeWalkerGrammar g)
throws java.io.IOException
java.io.IOExceptionpublic abstract void gen(antlr.WildcardElement wc)
wc - The wildcard element to generatepublic abstract void gen(antlr.ZeroOrMoreBlock blk)
blk - The (...)* block to generatepublic java.lang.String processStringForASTConstructor(java.lang.String str)
str - A String.public abstract java.lang.String getASTCreateString(Vector v)
v - A Vector of String, where each element is an expression in the target language yielding an AST node.
public abstract java.lang.String getASTCreateString(antlr.GrammarAtom atom,
java.lang.String str)
str - The text of the arguments to the AST constructionpublic static java.lang.String encodeLexerRuleName(java.lang.String id)
public static java.lang.String decodeLexerRuleName(java.lang.String id)
public abstract java.lang.String mapTreeId(java.lang.String id,
ActionTransInfo tInfo)
id - The identifier name to map
public java.lang.String getFOLLOWBitSet(java.lang.String ruleName,
int k)
public java.lang.String getFIRSTBitSet(java.lang.String ruleName,
int k)
public static java.lang.String reverseLexerRuleName(java.lang.String id)
public void setAnalyzer(LLkGrammarAnalyzer analyzer_)
public void setBehavior(DefineGrammarSymbols behavior_)
public void setTool(Tool tool)