public class CSharpTarget extends Target
gen, targetCharValueEscape| Constructor and Description |
|---|
CSharpTarget(CodeGenerator gen) |
| Modifier and Type | Method and Description |
|---|---|
String |
encodeIntAsCharEscape(int v)
Assume 16-bit char
|
String |
getTargetStringLiteralFromANTLRStringLiteral(CodeGenerator generator,
String literal,
boolean addQuotes)
Convert from an ANTLR string literal found in a grammar file to an
equivalent string literal in the target language.
|
String |
getVersion()
ANTLR tool should check output templates / target are compatible with tool code generation.
|
protected org.stringtemplate.v4.STGroup |
loadTemplates() |
protected boolean |
visibleGrammarSymbolCausesIssueInGeneratedCode(GrammarAST idNode) |
genFile, getAltLabelContextStructName, getBaseListenerFileName, getBaseVisitorFileName, getCodeGenerator, getElementListName, getElementName, getImplicitRuleLabel, getImplicitSetLabel, getImplicitTokenLabel, getInlineTestSetWordSize, getLanguage, getListenerFileName, getListLabel, getLoopCounter, getLoopLabel, getRecognizerFileName, getRuleFunctionContextStructName, getRuleFunctionContextStructName, getSerializedATNSegmentLimit, getTargetStringLiteralFromString, getTargetStringLiteralFromString, getTemplates, getTokenTypeAsTargetLabel, getTokenTypesAsTargetLabels, getVisitorFileName, grammarSymbolCausesIssueInGeneratedCode, needsHeader, supportsOverloadedMethods, templatesExist, wantsBaseListener, wantsBaseVisitorpublic CSharpTarget(CodeGenerator gen)
public String getVersion()
TargetgetVersion in class Targetpublic String encodeIntAsCharEscape(int v)
TargetencodeIntAsCharEscape in class Targetpublic String getTargetStringLiteralFromANTLRStringLiteral(CodeGenerator generator, String literal, boolean addQuotes)
TargetConvert 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.
getTargetStringLiteralFromANTLRStringLiteral in class Targetprotected boolean visibleGrammarSymbolCausesIssueInGeneratedCode(GrammarAST idNode)
visibleGrammarSymbolCausesIssueInGeneratedCode in class Targetprotected org.stringtemplate.v4.STGroup loadTemplates()
loadTemplates in class TargetCopyright © 1992–2016 ANTLR. All rights reserved.