Class CharSequenceReader

  • All Implemented Interfaces:
    Closeable, Serializable, AutoCloseable, Readable

    public class CharSequenceReader
    extends Reader
    implements Serializable
    Reader implementation that can read from String, StringBuffer, StringBuilder, CharBuffer or GString.

    Note: Supports mark(int) and reset().

    Note: This class is mostly a copy from Commons IO and is intended for internal Groovy usage only. It may be deprecated and removed from Groovy at a faster pace than other classes. If you need this functionality in your Groovy programs, we recommend using the Commons IO equivalent directly.

    See Also:
    Serialized Form
    • Constructor Detail

      • CharSequenceReader

        public CharSequenceReader​(CharSequence charSequence)
        Construct a new instance with the specified character sequence.
        Parameters:
        charSequence - The character sequence, may be null
    • Method Detail

      • close

        public void close()
        Close resets the reader back to the start and removes any marked position.
        Specified by:
        close in interface AutoCloseable
        Specified by:
        close in interface Closeable
        Specified by:
        close in class Reader
      • mark

        public void mark​(int readAheadLimit)
        Mark the current position.
        Overrides:
        mark in class Reader
        Parameters:
        readAheadLimit - ignored
      • markSupported

        public boolean markSupported()
        Mark is supported (returns true).
        Overrides:
        markSupported in class Reader
        Returns:
        true
      • read

        public int read()
        Read a single character.
        Overrides:
        read in class Reader
        Returns:
        the next character from the character sequence or -1 if the end has been reached.
      • read

        public int read​(char[] array,
                        int offset,
                        int length)
        Read the sepcified number of characters into the array.
        Specified by:
        read in class Reader
        Parameters:
        array - The array to store the characters in
        offset - The starting position in the array to store
        length - The maximum number of characters to read
        Returns:
        The number of characters read or -1 if there are no more
      • reset

        public void reset()
        Reset the reader to the last marked position (or the beginning if mark has not been called).
        Overrides:
        reset in class Reader
      • skip

        public long skip​(long n)
        Skip the specified number of characters.
        Overrides:
        skip in class Reader
        Parameters:
        n - The number of characters to skip
        Returns:
        The actual number of characters skipped
      • toString

        public String toString()
        Return a String representation of the underlying character sequence.
        Overrides:
        toString in class Object
        Returns:
        The contents of the character sequence