Package org.jcodings

Class MultiByteEncoding

    • Field Detail

      • EncLen

        protected final int[] EncLen
      • Trans

        protected final int[][] Trans
      • TransZero

        protected final int[] TransZero
    • Constructor Detail

      • MultiByteEncoding

        protected MultiByteEncoding​(java.lang.String name,
                                    int minLength,
                                    int maxLength,
                                    int[] EncLen,
                                    int[][] Trans,
                                    short[] CTypeTable)
    • Method Detail

      • length

        public int length​(byte c)
        Description copied from class: Encoding
        Returns character length given character head returns 1 for singlebyte encodings or performs direct length table lookup for multibyte ones.
        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)
      • 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: Encoding
        Oniguruma equivalent: case_map
        Specified by:
        caseMap in class Encoding
      • 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)
        Specified by:
        strLength in class Encoding
      • strCodeAt

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

        public static boolean isInRange​(int code,
                                        int from,
                                        int to)