Class WhitespaceString

    • Constructor Detail

      • WhitespaceString

        public WhitespaceString()
    • Method Detail

      • uncompress

        public abstract UnicodeString uncompress()
        Uncompress the whitespace to a (normal) UnicodeString
        Returns:
        the uncompressed value
      • getWidth

        public int getWidth()
        Description copied from class: UnicodeString
        Get the number of bits needed to hold all the characters in this string
        Specified by:
        getWidth in class UnicodeString
        Returns:
        7 for ascii characters (not used??), 8 for latin-1, 16 for BMP, 24 for general Unicode.
      • substring

        public UnicodeString substring​(long start,
                                       long end)
        Returns a new UnicodeString that is a subsequence of this sequence. The subsequence starts with the codepoint value at the specified index and ends with the codepoint value at index end - 1. The length (in codepoints) of thereturned sequence is end - start, so if start == end then an empty sequence is returned.
        Specified by:
        substring in class UnicodeString
        Parameters:
        start - the start index, inclusive
        end - the end index, exclusive
        Returns:
        the specified subsequence
        Throws:
        IndexOutOfBoundsException - if start or end are negative, if end is greater than length(), or if start is greater than end
      • indexOf

        public long indexOf​(int codePoint,
                            long from)
        Description copied from class: UnicodeString
        Get the position of the first occurrence of the specified codepoint, starting the search at a given position in the string
        Specified by:
        indexOf in class UnicodeString
        Parameters:
        codePoint - the sought codePoint
        from - the position from which the search should start (0-based). A negative value is treated as zero. A position beyond the end of the string results in a return value of -1 (meaning not found).
        Returns:
        the position (0-based) of the first occurrence found, or -1 if not found
      • indexWhere

        public long indexWhere​(IntPredicate predicate,
                               long from)
        Description copied from class: UnicodeString
        Get the position of the first occurrence of a codepoint that matches a supplied predicate, starting the search at a given position in the string
        Specified by:
        indexWhere in class UnicodeString
        Parameters:
        predicate - condition that the codepoint must satisfy
        from - the position from which the search should start (0-based). A negative value is treated as zero. A position beyond the end of the string results in a return value of -1 (meaning not found).
        Returns:
        the position (0-based) of the first codepoint to match the predicate, or -1 if not found
      • toString

        public String toString()
        Returns a string representation of the object.
        Overrides:
        toString in class Object
      • write

        public abstract void write​(UnicodeWriter writer)
                            throws IOException
        Write the value to a UnicodeWriter
        Parameters:
        writer - the writer to write to
        Throws:
        IOException - if an error occurs downstream
      • copy8bit

        void copy8bit​(byte[] target,
                      int offset)
        Description copied from class: UnicodeString
        Copy this string, as a sequence of 8-bit characters, to a specified array
        Overrides:
        copy8bit in class UnicodeString
        Parameters:
        target - the target array: the caller must ensure there is sufficient capacity
        offset - the position in the target array
      • copy16bit

        void copy16bit​(char[] target,
                       int offset)
        Description copied from class: UnicodeString
        Copy this string, as a sequence of 16-bit characters, to a specified array
        Overrides:
        copy16bit in class UnicodeString
        Parameters:
        target - the target array: the caller must ensure there is sufficient capacity
        offset - the position in the target array
      • copy24bit

        void copy24bit​(byte[] target,
                       int offset)
        Description copied from class: UnicodeString
        Copy this string, as a sequence of 24-bit characters, to a specified array
        Overrides:
        copy24bit in class UnicodeString
        Parameters:
        target - the target array: the caller must ensure there is sufficient capacity
        offset - the position in the target array as a byte offset (that is, the character offset times 3)
      • copy32bit

        void copy32bit​(int[] target,
                       int offset)
        Description copied from class: UnicodeString
        Copy this string, as a sequence of 32-bit codepoints, to a specified array
        Overrides:
        copy32bit in class UnicodeString
        Parameters:
        target - the target array: the caller must ensure there is sufficient capacity
        offset - the position in the target array as a codepoint offset
      • writeEscape

        public abstract void writeEscape​(boolean[] specialChars,
                                         UnicodeWriter writer)
                                  throws IOException
        Write the value to a Writer with escaping of special characters
        Parameters:
        specialChars - identifies which characters are considered special
        writer - the writer to write to
        Throws:
        IOException - if an error occurs downstream