UCharacterUtility.java 1.4 KB
/*
 * Decompiled with CFR 0_118.
 */
package com.adobe.agl.impl;

public final class UCharacterUtility {
    public static boolean isNonCharacter(int ch) {
        if ((ch & 65534) == 65534) {
            return true;
        }
        return ch >= 64976 && ch <= 65007;
    }

    static int toInt(char msc, char lsc) {
        return msc << 16 | lsc;
    }

    static int compareNullTermByteSubString(String str, byte[] array, int strindex, int aindex) {
        byte b = 1;
        int length = str.length();
        while (b != 0) {
            b = array[aindex];
            ++aindex;
            if (b == 0) break;
            if (strindex == length || str.charAt(strindex) != (char)(b & 255)) {
                return -1;
            }
            ++strindex;
        }
        return strindex;
    }

    static int skipNullTermByteSubString(byte[] array, int index, int skipcount) {
        for (int i = 0; i < skipcount; ++i) {
            byte b = 1;
            while (b != 0) {
                b = array[index];
                ++index;
            }
        }
        return index;
    }

    static int skipByteSubString(byte[] array, int index, int length, byte skipend) {
        int result;
        for (result = 0; result < length; ++result) {
            byte b = array[index + result];
            if (b != skipend) continue;
            ++result;
            break;
        }
        return result;
    }
}