Package org.antlr.codegen
Class CPPTarget
java.lang.Object
org.antlr.codegen.Target
org.antlr.codegen.CPPTarget
-
Field Summary
Fields inherited from class org.antlr.codegen.Target
targetCharValueEscape
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionescapeChar
(int c) Converts a String into a representation that can be use as a literal when surrounded by double-quotes.protected void
genRecognizerHeaderFile
(Tool tool, CodeGenerator generator, Grammar grammar, org.antlr.stringtemplate.StringTemplate headerFileST, String extName) int
getMaxCharValue
(CodeGenerator codegen) Character constants get truncated to this value.getTargetCharLiteralFromANTLRCharLiteral
(CodeGenerator codegen, String literal) Convert from an ANTLR char literal found in a grammar file to an equivalent char literal in the target language.getTargetStringLiteralFromANTLRStringLiteral
(CodeGenerator codegen, String literal) Convert from an ANTLR string literal found in a grammar file to an equivalent string literal in the target language.Methods inherited from class org.antlr.codegen.Target
encodeIntAsCharEscape, genRecognizerFile, getTarget64BitStringFromValue, getTargetStringLiteralFromString, getTargetStringLiteralFromString, getTokenTypeAsTargetLabel, isValidActionScope, performGrammarAnalysis, postProcessAction
-
Constructor Details
-
CPPTarget
public CPPTarget()
-
-
Method Details
-
escapeChar
-
escapeString
Converts a String into a representation that can be use as a literal when surrounded by double-quotes. Used for escaping semantic predicate strings for exceptions.- Parameters:
s
- The String to be changed into a literal
-
genRecognizerHeaderFile
protected void genRecognizerHeaderFile(Tool tool, CodeGenerator generator, Grammar grammar, org.antlr.stringtemplate.StringTemplate headerFileST, String extName) throws IOException - Overrides:
genRecognizerHeaderFile
in classTarget
- Throws:
IOException
-
getTargetCharLiteralFromANTLRCharLiteral
Convert from an ANTLR char literal found in a grammar file to an equivalent char literal in the target language. For Java, this is the identify translation; i.e., '\n' -> '\n'. Most languages will be able to use this 1-to-1 mapping. Expect single quotes around the incoming literal. Depending on the charvocabulary the charliteral should be prefixed with a 'L'- Overrides:
getTargetCharLiteralFromANTLRCharLiteral
in classTarget
-
getTargetStringLiteralFromANTLRStringLiteral
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 identify translation; i.e., "\"\n" -> "\"\n". Most languages will be able to use this 1-to-1 mapping. Expect double quotes around the incoming literal. Depending on the charvocabulary the string should be prefixed with a 'L'- Overrides:
getTargetStringLiteralFromANTLRStringLiteral
in classTarget
-
getMaxCharValue
Character constants get truncated to this value. TODO: This should be derived from the charVocabulary. Depending on it being 255 or 0xFFFF the templates should generate normal character constants or multibyte ones.- Overrides:
getMaxCharValue
in classTarget
-