Package org.antlr.codegen
Class JavaScriptTarget
java.lang.Object
org.antlr.codegen.Target
org.antlr.codegen.JavaScriptTarget
-
Field Summary
Fields inherited from class org.antlr.codegen.Target
targetCharValueEscape
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionencodeIntAsCharEscape
(int v) Convert an int to a JavaScript Unicode character literal.getTarget64BitStringFromValue
(long word) Convert long to two 32-bit numbers separted by a comma.private void
writeHexWithPadding
(StringBuffer buf, String digits) Methods inherited from class org.antlr.codegen.Target
genRecognizerFile, genRecognizerHeaderFile, getMaxCharValue, getTargetCharLiteralFromANTLRCharLiteral, getTargetStringLiteralFromANTLRStringLiteral, getTargetStringLiteralFromString, getTargetStringLiteralFromString, getTokenTypeAsTargetLabel, isValidActionScope, performGrammarAnalysis, postProcessAction, useBaseTemplatesForSynPredFragments
-
Constructor Details
-
JavaScriptTarget
public JavaScriptTarget()
-
-
Method Details
-
encodeIntAsCharEscape
Convert an int to a JavaScript Unicode character literal. The current JavaScript spec (ECMA-262) doesn't provide for octal notation in String literals, although some implementations support it. This method overrides the parent class so that characters will always be encoded as Unicode literals (e.g. ).- Overrides:
encodeIntAsCharEscape
in classTarget
-
getTarget64BitStringFromValue
Convert long to two 32-bit numbers separted by a comma. JavaScript does not support 64-bit numbers, so we need to break the number into two 32-bit literals to give to the Bit. A number like 0xHHHHHHHHLLLLLLLL is broken into the following string: "0xLLLLLLLL, 0xHHHHHHHH" Note that the low order bits are first, followed by the high order bits. This is to match how the BitSet constructor works, where the bits are passed in in 32-bit chunks with low-order bits coming first. Note: stole the following two methods from the ActionScript target.- Overrides:
getTarget64BitStringFromValue
in classTarget
-
writeHexWithPadding
-