org.jcodings.specific
Class USASCIIEncoding

java.lang.Object
  extended by org.jcodings.Encoding
      extended by org.jcodings.SingleByteEncoding
          extended by org.jcodings.specific.USASCIIEncoding
All Implemented Interfaces:
Cloneable

public final class USASCIIEncoding
extends SingleByteEncoding


Field Summary
protected static CaseFoldCodeItem[] EMPTY_FOLD_CODES
           
static USASCIIEncoding INSTANCE
           
 
Fields inherited from class org.jcodings.SingleByteEncoding
LowerCaseTable
 
Fields inherited from class org.jcodings.Encoding
CHAR_INVALID, hashCode, isAsciiCompatible, isDummy, isFixedWidth, isSingleByte, maxLength, minLength, name, NEW_LINE
 
Constructor Summary
protected USASCIIEncoding()
           
 
Method Summary
 void applyAllCaseFold(int flag, ApplyAllCaseFoldFunction fun, Object arg)
          onigenc_ascii_apply_all_case_fold / used also by multibyte encodings
protected  void asciiApplyAllCaseFold(int flag, ApplyAllCaseFoldFunction fun, Object arg)
           
protected  CaseFoldCodeItem[] asciiCaseFoldCodesByString(int flag, byte[] bytes, int p, int end)
           
protected  int asciiMbcCaseFold(int flag, byte[] bytes, IntHolder pp, int end, byte[] lower)
           
 CaseFoldCodeItem[] caseFoldCodesByString(int flag, byte[] bytes, int p, int end)
          onigenc_ascii_get_case_fold_codes_by_str / used also by multibyte encodings
 boolean isCodeCType(int code, int ctype)
          ascii_is_code_ctype / ONIGENC_IS_ASCII_CODE_CTYPE
protected  boolean isCodeCTypeInternal(int code, int ctype)
          ONIGENC_IS_XXXXXX_CODE_CTYPE
 boolean isNewLine(byte[] bytes, int p, int end)
          onigenc_is_mbc_newline_0x0a / used also by multibyte encodings
 int length(byte[] bytes, int p, int end)
          Returns character length given stream, character position and stream end returns 1 for singlebyte encodings or performs sanity validations for multibyte ones and returns the character length, missing characters in the stream otherwise
 int mbcCaseFold(int flag, byte[] bytes, IntHolder pp, int end, byte[] lower)
          onigenc_ascii_mbc_case_fold
 int propertyNameToCType(byte[] bytes, int p, int end)
          onigenc_minimum_property_name_to_ctype notably overridden by unicode encodings
 byte[] toLowerCaseTable()
          Returns lower case table if it's safe to use it directly, otherwise null Used for fast case insensitive matching for some singlebyte encodings
 
Methods inherited from class org.jcodings.SingleByteEncoding
codeToMbc, codeToMbcLength, ctypeCodeRange, isReverseMatchAllowed, leftAdjustCharHead, length, mbcToCode, strCodeAt, strLength
 
Methods inherited from class org.jcodings.Encoding
asciiToLower, asciiToUpper, digitVal, equals, getIndex, getName, hashCode, isAlnum, isAlpha, isAscii, isAscii, isAsciiCompatible, isBlank, isCntrl, isDigit, isDummy, isFixedWidth, isGraph, isLower, isMbcAscii, isMbcCrnl, isMbcHead, isMbcWord, isNewLine, isPrint, isPunct, isSbWord, isSingleByte, isSpace, isUpper, isWord, isWordGraphPrint, isXDigit, load, maxLength, maxLengthDistance, mbcodeStartPosition, minLength, odigitVal, prevCharHead, replicate, rightAdjustCharHead, rightAdjustCharHeadWithPrev, setName, setName, step, stepBack, strByteLengthNull, strLengthNull, strNCmp, toString, xdigitVal
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

INSTANCE

public static final USASCIIEncoding INSTANCE

EMPTY_FOLD_CODES

protected static final CaseFoldCodeItem[] EMPTY_FOLD_CODES
Constructor Detail

USASCIIEncoding

protected USASCIIEncoding()
Method Detail

length

public int length(byte[] bytes,
                  int p,
                  int end)
Description copied from class: Encoding
Returns character length given stream, character position and stream end returns 1 for singlebyte encodings or performs sanity validations for multibyte ones and returns the character length, missing characters in the stream otherwise

Overrides:
length in class SingleByteEncoding
Returns:
0 Never > 0 Valid character, length returned -1 Illegal/malformed character < -1 (-1 - n) Number of missing bytes for character in p...end range Oniguruma equivalent: mbc_enc_len modified for 1.9 purposes,

toLowerCaseTable

public final byte[] toLowerCaseTable()
Description copied from class: Encoding
Returns lower case table if it's safe to use it directly, otherwise null Used for fast case insensitive matching for some singlebyte encodings

Overrides:
toLowerCaseTable in class Encoding
Returns:
lower case table

isCodeCType

public boolean isCodeCType(int code,
                           int ctype)
ascii_is_code_ctype / ONIGENC_IS_ASCII_CODE_CTYPE

Specified by:
isCodeCType in class Encoding
Parameters:
code - a code point of a character
ctype - a character type to check against Oniguruma equivalent: is_code_ctype

isCodeCTypeInternal

protected final boolean isCodeCTypeInternal(int code,
                                            int ctype)
ONIGENC_IS_XXXXXX_CODE_CTYPE


isNewLine

public boolean isNewLine(byte[] bytes,
                         int p,
                         int end)
onigenc_is_mbc_newline_0x0a / used also by multibyte encodings

Specified by:
isNewLine in class Encoding

asciiMbcCaseFold

protected final int asciiMbcCaseFold(int flag,
                                     byte[] bytes,
                                     IntHolder pp,
                                     int end,
                                     byte[] lower)

mbcCaseFold

public int mbcCaseFold(int flag,
                       byte[] bytes,
                       IntHolder pp,
                       int end,
                       byte[] lower)
onigenc_ascii_mbc_case_fold

Specified by:
mbcCaseFold in class Encoding
Parameters:
flag - case fold flag
pp - an IntHolder that points at character head
lower - a buffer where to extract case folded character Oniguruma equivalent: mbc_case_fold

asciiApplyAllCaseFold

protected final void asciiApplyAllCaseFold(int flag,
                                           ApplyAllCaseFoldFunction fun,
                                           Object arg)

applyAllCaseFold

public void applyAllCaseFold(int flag,
                             ApplyAllCaseFoldFunction fun,
                             Object arg)
onigenc_ascii_apply_all_case_fold / used also by multibyte encodings

Specified by:
applyAllCaseFold in class Encoding
Parameters:
flag - case fold flag
fun - case folding functor (look at: ApplyCaseFold)
arg - case folding functor argument (look at: ApplyCaseFoldArg) Oniguruma equivalent: apply_all_case_fold

asciiCaseFoldCodesByString

protected final CaseFoldCodeItem[] asciiCaseFoldCodesByString(int flag,
                                                              byte[] bytes,
                                                              int p,
                                                              int end)

caseFoldCodesByString

public CaseFoldCodeItem[] caseFoldCodesByString(int flag,
                                                byte[] bytes,
                                                int p,
                                                int end)
onigenc_ascii_get_case_fold_codes_by_str / used also by multibyte encodings

Specified by:
caseFoldCodesByString in class Encoding

propertyNameToCType

public int propertyNameToCType(byte[] bytes,
                               int p,
                               int end)
onigenc_minimum_property_name_to_ctype notably overridden by unicode encodings

Specified by:
propertyNameToCType in class Encoding


Copyright © 2011. All Rights Reserved.