Package org.jcodings

Class SingleByteEncoding

All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
ASCIIEncoding, CaseFoldMapEncoding, USASCIIEncoding

public abstract class SingleByteEncoding extends AbstractEncoding
  • Field Details

    • MAX_BYTE

      public static final int MAX_BYTE
      See Also:
    • LowerCaseTable

      protected final byte[] LowerCaseTable
  • Constructor Details

    • SingleByteEncoding

      protected SingleByteEncoding(String name, short[] CTypeTable, byte[] LowerCaseTable)
  • Method Details

    • length

      public int length(byte c)
      onigenc_single_byte_mbc_enc_len
      Specified by:
      length in class Encoding
      Parameters:
      c - Character head Oniguruma equivalent: mbc_enc_len To be deprecated very soon (use length(byte[]bytes, int p, int end) version)
    • 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
      Specified by:
      length in class Encoding
      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,
    • strLength

      public final int strLength(byte[] bytes, int p, int end)
      Specified by:
      strLength in class Encoding
    • strCodeAt

      public int strCodeAt(byte[] bytes, int p, int end, int index)
      Specified by:
      strCodeAt in class Encoding
    • caseMap

      public int caseMap(IntHolder flagP, byte[] bytes, IntHolder pp, int end, byte[] to, int toP, int toEnd)
      Description copied from class: Encoding
      Oniguruma equivalent: case_map
      Specified by:
      caseMap in class Encoding
    • mbcToCode

      public int mbcToCode(byte[] bytes, int p, int end)
      onigenc_single_byte_mbc_to_code
      Specified by:
      mbcToCode in class Encoding
    • codeToMbcLength

      public int codeToMbcLength(int code)
      onigenc_single_byte_code_to_mbclen
      Specified by:
      codeToMbcLength in class Encoding
    • codeToMbc

      public final int codeToMbc(int code, byte[] bytes, int p)
      onigenc_single_byte_code_to_mbc
      Specified by:
      codeToMbc in class Encoding
      Returns:
      character length for the given code point Oniguruma equivalent: code_to_mbc
    • ctypeCodeRange

      public final int[] ctypeCodeRange(int ctype, IntHolder sbOut)
      onigenc_not_support_get_ctype_code_range
      Specified by:
      ctypeCodeRange in class Encoding
    • leftAdjustCharHead

      public final int leftAdjustCharHead(byte[] bytes, int p, int s, int end)
      onigenc_single_byte_left_adjust_char_head
      Specified by:
      leftAdjustCharHead in class Encoding
      Parameters:
      bytes - byte stream
      p - position
      s - stop
      end - end
    • isReverseMatchAllowed

      public final boolean isReverseMatchAllowed(byte[] bytes, int p, int end)
      onigenc_always_true_is_allowed_reverse_match
      Specified by:
      isReverseMatchAllowed in class Encoding