public class JavaScriptTarget extends Target
| Modifier and Type | Class and Description |
|---|---|
protected static class |
JavaScriptTarget.JavaStringRenderer |
| Modifier and Type | Field and Description |
|---|---|
protected java.util.Set<java.lang.String> |
badWords
Avoid grammar symbols in this set to prevent conflicts in gen'd code.
|
protected static java.lang.String[] |
javaScriptKeywords |
targetCharValueEscape| Constructor and Description |
|---|
JavaScriptTarget(CodeGenerator gen) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addBadWords() |
java.lang.String |
encodeIntAsCharEscape(int v)
Assume 16-bit char
|
java.util.Set<java.lang.String> |
getBadWords() |
int |
getInlineTestSetWordSize()
How many bits should be used to do inline token type tests? Java assumes
a 64-bit word for bitsets.
|
int |
getSerializedATNSegmentLimit()
Gets the maximum number of 16-bit unsigned integers that can be encoded
in a single segment of the serialized ATN.
|
java.lang.String |
getTargetStringLiteralFromANTLRStringLiteral(CodeGenerator generator,
java.lang.String literal,
boolean addQuotes)
Convert from an ANTLR string literal found in a grammar file to an
equivalent string literal in the target language.
|
java.lang.String |
getVersion()
ANTLR tool should check output templates / target are compatible with tool code generation.
|
protected org.stringtemplate.v4.STGroup |
loadTemplates() |
boolean |
supportsOverloadedMethods() |
protected boolean |
visibleGrammarSymbolCausesIssueInGeneratedCode(GrammarAST idNode) |
boolean |
wantsBaseListener() |
boolean |
wantsBaseVisitor() |
genFile, genListenerFile, genRecognizerHeaderFile, getAltLabelContextStructName, getCodeGenerator, getElementListName, getElementName, getImplicitRuleLabel, getImplicitSetLabel, getImplicitTokenLabel, getLanguage, getListLabel, getLoopCounter, getLoopLabel, getRuleFunctionContextStructName, getRuleFunctionContextStructName, getTargetStringLiteralFromString, getTargetStringLiteralFromString, getTemplates, getTokenTypeAsTargetLabel, getTokenTypesAsTargetLabels, grammarSymbolCausesIssueInGeneratedCode, templatesExistprotected static final java.lang.String[] javaScriptKeywords
protected final java.util.Set<java.lang.String> badWords
public JavaScriptTarget(CodeGenerator gen)
public java.lang.String getVersion()
TargetgetVersion in class Targetpublic java.util.Set<java.lang.String> getBadWords()
protected void addBadWords()
public java.lang.String getTargetStringLiteralFromANTLRStringLiteral(CodeGenerator generator, java.lang.String literal, boolean addQuotes)
Convert from an ANTLR string literal found in a grammar file to an equivalent string literal in the target language.
For Java, this is the translation 'a\n"' → "a\n\"".
Expect single quotes around the incoming literal. Just flip the quotes
and replace double quotes with \".
Note that we have decided to allow people to use '\"' without penalty, so
we must build the target string in a loop as String.replace(char, char)
cannot handle both \" and " without a lot of messing
around.
'a\n"' → "a\n\"".
Expect single quotes around the incoming literal. Just flip the quotes
and replace double quotes with \".
Note that we have decided to allow people to use '\"' without penalty, so
we must build the target string in a loop as String.replace(char, char)
cannot handle both \" and " without a lot of messing
around.getTargetStringLiteralFromANTLRStringLiteral in class Targetpublic java.lang.String encodeIntAsCharEscape(int v)
TargetencodeIntAsCharEscape in class Targetpublic int getSerializedATNSegmentLimit()
TargetgetSerializedATNSegmentLimit in class TargetSerializedATN.getSegments()public int getInlineTestSetWordSize()
TargetgetInlineTestSetWordSize in class Targetprotected boolean visibleGrammarSymbolCausesIssueInGeneratedCode(GrammarAST idNode)
visibleGrammarSymbolCausesIssueInGeneratedCode in class Targetprotected org.stringtemplate.v4.STGroup loadTemplates()
loadTemplates in class Targetpublic boolean wantsBaseListener()
wantsBaseListener in class Targetpublic boolean wantsBaseVisitor()
wantsBaseVisitor in class Targetpublic boolean supportsOverloadedMethods()
supportsOverloadedMethods in class Target