Package org.antlr.v4.codegen.target
Class GoTarget
java.lang.Object
org.antlr.v4.codegen.Target
org.antlr.v4.codegen.target.GoTarget
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionAvoid grammar symbols in this set to prevent conflicts in gen'd code.private static final booleanprivate static final String[]private static final String[]private static final String[]Fields inherited from class org.antlr.v4.codegen.Target
gen, targetCharValueEscape -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected voidappendUnicodeEscapedCodePoint(int codePoint, StringBuilder sb) Escape the Unicode code point appropriately for this language and append the escaped value tosb.encodeIntAsCharEscape(int v) Assume 16-bit charprotected voidgetBaseListenerFileName(boolean header) A given grammar T, return a blank listener implementation such as TBaseListener.java, if we're using the Java target.getBaseVisitorFileName(boolean header) A given grammar T, return a blank listener implementation such as TBaseListener.java, if we're using the Java target.intHow many bits should be used to do inline token type tests? Java assumes a 64-bit word for bitsets.getListenerFileName(boolean header) A given grammar T, return the listener name such as TListener.java, if we're using the Java target.getRecognizerFileName(boolean header) Generate TParser.java and TLexer.java from T.g4 if combined, else just use T.java as output regardless of type.intGets the maximum number of 16-bit unsigned integers that can be encoded in a single segment of the serialized ATN.ANTLR tool should check output templates / target are compatible with tool code generation.getVisitorFileName(boolean header) A given grammar T, return the visitor name such as TVisitor.java, if we're using the Java target.private voidprotected org.stringtemplate.v4.STGroupprotected booleanMethods inherited from class org.antlr.v4.codegen.Target
getAltLabelContextStructName, getCodeGenerator, getElementListName, getElementName, getImplicitRuleLabel, getImplicitSetLabel, getImplicitTokenLabel, getLanguage, getListLabel, getLoopCounter, getLoopLabel, getRuleFunctionContextStructName, getRuleFunctionContextStructName, getTargetStringLiteralFromANTLRStringLiteral, getTargetStringLiteralFromString, getTargetStringLiteralFromString, getTemplates, getTokenTypeAsTargetLabel, getTokenTypesAsTargetLabels, grammarSymbolCausesIssueInGeneratedCode, needsHeader, shouldUseUnicodeEscapeForCodePointInDoubleQuotedString, supportsOverloadedMethods, templatesExist, wantsBaseListener, wantsBaseVisitor
-
Field Details
-
goKeywords
-
goPredeclaredIdentifiers
-
goRuleContextInterfaceMethods
-
badWords
Avoid grammar symbols in this set to prevent conflicts in gen'd code. -
DO_GOFMT
private static final boolean DO_GOFMT
-
-
Constructor Details
-
GoTarget
-
-
Method Details
-
getVersion
Description copied from class:TargetANTLR tool should check output templates / target are compatible with tool code generation. For now, a simple string match used on x.y of x.y.z scheme. We use a method to avoid mismatches between a template called VERSION. This value is checked against Tool.VERSION during load of templates. This additional method forces all targets 4.3 and beyond to add this method.- Specified by:
getVersionin classTarget
-
getBadWords
-
addBadWords
protected void addBadWords() -
genFile
-
gofmt
-
encodeIntAsCharEscape
Description copied from class:TargetAssume 16-bit char- Overrides:
encodeIntAsCharEscapein classTarget
-
getSerializedATNSegmentLimit
public int getSerializedATNSegmentLimit()Description copied from class:TargetGets the maximum number of 16-bit unsigned integers that can be encoded in a single segment of the serialized ATN.- Overrides:
getSerializedATNSegmentLimitin classTarget- Returns:
- the serialized ATN segment limit
- See Also:
-
getInlineTestSetWordSize
public int getInlineTestSetWordSize()Description copied from class:TargetHow many bits should be used to do inline token type tests? Java assumes a 64-bit word for bitsets. Must be a valid wordsize for your target like 8, 16, 32, 64, etc...- Overrides:
getInlineTestSetWordSizein classTarget
-
visibleGrammarSymbolCausesIssueInGeneratedCode
- Specified by:
visibleGrammarSymbolCausesIssueInGeneratedCodein classTarget
-
loadTemplates
protected org.stringtemplate.v4.STGroup loadTemplates()- Overrides:
loadTemplatesin classTarget
-
getRecognizerFileName
Description copied from class:TargetGenerate TParser.java and TLexer.java from T.g4 if combined, else just use T.java as output regardless of type.- Overrides:
getRecognizerFileNamein classTarget
-
getListenerFileName
A given grammar T, return the listener name such as TListener.java, if we're using the Java target.- Overrides:
getListenerFileNamein classTarget
-
getVisitorFileName
A given grammar T, return the visitor name such as TVisitor.java, if we're using the Java target.- Overrides:
getVisitorFileNamein classTarget
-
getBaseListenerFileName
A given grammar T, return a blank listener implementation such as TBaseListener.java, if we're using the Java target.- Overrides:
getBaseListenerFileNamein classTarget
-
getBaseVisitorFileName
A given grammar T, return a blank listener implementation such as TBaseListener.java, if we're using the Java target.- Overrides:
getBaseVisitorFileNamein classTarget
-
appendUnicodeEscapedCodePoint
Description copied from class:TargetEscape the Unicode code point appropriately for this language and append the escaped value tosb.- Specified by:
appendUnicodeEscapedCodePointin classTarget
-