Package org.jcodings
Class MultiByteEncoding
- java.lang.Object
-
- org.jcodings.Encoding
-
- org.jcodings.AbstractEncoding
-
- org.jcodings.MultiByteEncoding
-
- All Implemented Interfaces:
java.lang.Cloneable
- Direct Known Subclasses:
CanBeTrailTableEncoding
,EmacsMuleEncoding
,EucEncoding
,GB18030Encoding
,UnicodeEncoding
public abstract class MultiByteEncoding extends AbstractEncoding
-
-
Field Summary
Fields Modifier and Type Field Description protected static int
A
protected int[]
EncLen
protected static int
F
protected int[][]
Trans
protected int[]
TransZero
-
Fields inherited from class org.jcodings.AbstractEncoding
EMPTY_FOLD_CODES
-
Fields inherited from class org.jcodings.Encoding
CHAR_INVALID, charset, hashCode, isAsciiCompatible, isDummy, isFixedWidth, isSingleByte, maxLength, minLength, name, NEW_LINE
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
MultiByteEncoding(java.lang.String name, int minLength, int maxLength, int[] EncLen, int[][] Trans, short[] CTypeTable)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
length(byte c)
Returns character length given character head returns1
for singlebyte encodings or performs direct length table lookup for multibyte ones.private int
lengthForThree(byte[] bytes, int p, int end, int b, int s)
private int
lengthForThreeUptoFour(byte[] bytes, int p, int end, int b, int s)
private int
lengthForTwo(byte[] bytes, int p, int end, int b, int s)
protected int
lengthForTwoUptoFour(byte[] bytes, int p, int end, int b, int s)
private int
lengthForTwoUptoThree(byte[] bytes, int p, int end, int b, int s)
protected int
mb2CodeToMbc(int code, byte[] bytes, int p)
protected int
mb2CodeToMbcLength(int code)
protected boolean
mb2IsCodeCType(int code, int ctype)
protected int
mb4CodeToMbc(int code, byte[] bytes, int p)
protected int
mb4CodeToMbcLength(int code)
protected boolean
mb4IsCodeCType(int code, int ctype)
protected int
mbnMbcCaseFold(int flag, byte[] bytes, IntHolder pp, int end, byte[] lower)
protected int
mbnMbcToCode(byte[] bytes, int p, int end)
protected int
missing(int n)
protected int
missing(int b, int delta)
protected int
safeLengthForUptoFour(byte[] bytes, int p, int end)
protected int
safeLengthForUptoFourGreatedThan127(byte[] bytes, int p, int end)
protected int
safeLengthForUptoThree(byte[] bytes, int p, int end)
protected int
safeLengthForUptoTwo(byte[] bytes, int p, int end)
int
strCodeAt(byte[] bytes, int p, int end, int index)
int
strLength(byte[] bytes, int p, int end)
-
Methods inherited from class org.jcodings.AbstractEncoding
applyAllCaseFold, asciiApplyAllCaseFold, asciiCaseFoldCodesByString, asciiMbcCaseFold, caseFoldCodesByString, isCodeCTypeInternal, isNewLine, mbcCaseFold, propertyNameToCType
-
Methods inherited from class org.jcodings.Encoding
asciiToLower, asciiToUpper, codeToMbc, codeToMbcLength, ctypeCodeRange, digitVal, equals, getCharset, getCharsetName, getIndex, getName, hashCode, isAlnum, isAlpha, isAscii, isAscii, isAsciiCompatible, isBlank, isCntrl, isCodeCType, isDigit, isDummy, isFixedWidth, isGraph, isLower, isMbcAscii, isMbcCrnl, isMbcHead, isMbcWord, isNewLine, isPrint, isPunct, isReverseMatchAllowed, isSbWord, isSingleByte, isSpace, isUpper, isWord, isWordGraphPrint, isXDigit, leftAdjustCharHead, length, load, maxLength, maxLengthDistance, mbcodeStartPosition, mbcToCode, minLength, odigitVal, prevCharHead, replicate, rightAdjustCharHead, rightAdjustCharHeadWithPrev, setName, setName, step, stepBack, strByteLengthNull, strLengthNull, strNCmp, toLowerCaseTable, toString, xdigitVal
-
-
-
-
Field Detail
-
EncLen
protected final int[] EncLen
-
A
protected static final int A
- See Also:
- Constant Field Values
-
F
protected static final int F
- See Also:
- Constant Field Values
-
Trans
protected final int[][] Trans
-
TransZero
protected final int[] TransZero
-
-
Method Detail
-
length
public int length(byte c)
Description copied from class:Encoding
Returns character length given character head returns1
for singlebyte encodings or performs direct length table lookup for multibyte ones.
-
missing
protected final int missing(int n)
-
missing
protected final int missing(int b, int delta)
-
safeLengthForUptoFourGreatedThan127
protected final int safeLengthForUptoFourGreatedThan127(byte[] bytes, int p, int end)
-
safeLengthForUptoFour
protected final int safeLengthForUptoFour(byte[] bytes, int p, int end)
-
lengthForTwoUptoFour
protected final int lengthForTwoUptoFour(byte[] bytes, int p, int end, int b, int s)
-
lengthForThreeUptoFour
private int lengthForThreeUptoFour(byte[] bytes, int p, int end, int b, int s)
-
safeLengthForUptoThree
protected final int safeLengthForUptoThree(byte[] bytes, int p, int end)
-
lengthForTwoUptoThree
private int lengthForTwoUptoThree(byte[] bytes, int p, int end, int b, int s)
-
lengthForThree
private int lengthForThree(byte[] bytes, int p, int end, int b, int s)
-
safeLengthForUptoTwo
protected final int safeLengthForUptoTwo(byte[] bytes, int p, int end)
-
lengthForTwo
private int lengthForTwo(byte[] bytes, int p, int end, int b, int s)
-
mbnMbcToCode
protected final int mbnMbcToCode(byte[] bytes, int p, int end)
-
mbnMbcCaseFold
protected final int mbnMbcCaseFold(int flag, byte[] bytes, IntHolder pp, int end, byte[] lower)
-
mb2CodeToMbcLength
protected final int mb2CodeToMbcLength(int code)
-
mb4CodeToMbcLength
protected final int mb4CodeToMbcLength(int code)
-
mb2CodeToMbc
protected final int mb2CodeToMbc(int code, byte[] bytes, int p)
-
mb4CodeToMbc
protected final int mb4CodeToMbc(int code, byte[] bytes, int p)
-
mb2IsCodeCType
protected final boolean mb2IsCodeCType(int code, int ctype)
-
mb4IsCodeCType
protected final boolean mb4IsCodeCType(int code, int ctype)
-
strLength
public int strLength(byte[] bytes, int p, int end)
-
-