Package org.antlr.codegen
Class JavaScriptTarget
- java.lang.Object
-
- org.antlr.codegen.Target
-
- org.antlr.codegen.JavaScriptTarget
-
public class JavaScriptTarget extends Target
-
-
Field Summary
-
Fields inherited from class org.antlr.codegen.Target
targetCharValueEscape
-
-
Constructor Summary
Constructors Constructor Description JavaScriptTarget()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
encodeIntAsCharEscape(int v)
Convert an int to a JavaScript Unicode character literal.java.lang.String
getTarget64BitStringFromValue(long word)
Convert long to two 32-bit numbers separted by a comma.-
Methods inherited from class org.antlr.codegen.Target
genRecognizerFile, genRecognizerHeaderFile, getMaxCharValue, getTargetCharLiteralFromANTLRCharLiteral, getTargetStringLiteralFromANTLRStringLiteral, getTargetStringLiteralFromString, getTargetStringLiteralFromString, getTokenTypeAsTargetLabel, isValidActionScope, performGrammarAnalysis, postProcessAction, useBaseTemplatesForSynPredFragments
-
-
-
-
Method Detail
-
encodeIntAsCharEscape
public java.lang.String encodeIntAsCharEscape(int v)
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
public java.lang.String getTarget64BitStringFromValue(long word)
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
-
-