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
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedMultiByteEncoding(java.lang.String name, int minLength, int maxLength, int[] EncLen, int[][] Trans, short[] CTypeTable)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intcaseMap(IntHolder flagP, byte[] bytes, IntHolder pp, int end, byte[] to, int toP, int toEnd)Oniguruma equivalent:case_mapstatic booleanisInRange(int code, int from, int to)intlength(byte c)Returns character length given character head returns1for singlebyte encodings or performs direct length table lookup for multibyte ones.private intlengthForThree(byte[] bytes, int p, int end, int b, int s)private intlengthForThreeUptoFour(byte[] bytes, int p, int end, int b, int s)private intlengthForTwo(byte[] bytes, int p, int end, int b, int s)protected intlengthForTwoUptoFour(byte[] bytes, int p, int end, int b, int s)private intlengthForTwoUptoThree(byte[] bytes, int p, int end, int b, int s)protected intmb2CodeToMbc(int code, byte[] bytes, int p)protected intmb2CodeToMbcLength(int code)protected booleanmb2IsCodeCType(int code, int ctype)protected intmb4CodeToMbc(int code, byte[] bytes, int p)protected intmb4CodeToMbcLength(int code)protected booleanmb4IsCodeCType(int code, int ctype)protected intmbnMbcCaseFold(int flag, byte[] bytes, IntHolder pp, int end, byte[] lower)protected intmbnMbcToCode(byte[] bytes, int p, int end)protected intmissing(int n)protected intmissing(int b, int delta)protected intsafeLengthForUptoFour(byte[] bytes, int p, int end)protected intsafeLengthForUptoThree(byte[] bytes, int p, int end)protected intsafeLengthForUptoTwo(byte[] bytes, int p, int end)intstrCodeAt(byte[] bytes, int p, int end, int index)intstrLength(byte[] bytes, int p, int end)-
Methods inherited from class org.jcodings.AbstractEncoding
applyAllCaseFold, asciiApplyAllCaseFold, asciiCaseFoldCodesByString, asciiMbcCaseFold, asciiOnlyCaseMap, caseFoldCodesByString, isCodeCTypeInternal, isNewLine, mbcCaseFold, propertyNameToCType, singleByteAsciiOnlyCaseMap
-
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, isUnicode, isUpper, isUTF8, isWord, isWordGraphPrint, isXDigit, leftAdjustCharHead, length, load, load, maxLength, maxLengthDistance, mbcodeStartPosition, mbcToCode, minLength, odigitVal, prevCharHead, replicate, rightAdjustCharHead, rightAdjustCharHeadWithPrev, setDummy, 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:EncodingReturns character length given character head returns1for 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)
-
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)
-
caseMap
public int caseMap(IntHolder flagP, byte[] bytes, IntHolder pp, int end, byte[] to, int toP, int toEnd)
Description copied from class:EncodingOniguruma equivalent:case_map
-
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)
-
strCodeAt
public int strCodeAt(byte[] bytes, int p, int end, int index)
-
isInRange
public static boolean isInRange(int code, int from, int to)
-
-