Class UnicodeEscapingReader

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable, java.lang.Readable

    public class UnicodeEscapingReader
    extends java.io.Reader
    Translates GLS-defined unicode escapes into characters. Throws an exception in the event of an invalid unicode escape being detected.

    No attempt has been made to optimize this class for speed or space.

    • Field Summary

      • Fields inherited from class java.io.Reader

        lock
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()
      Closes this reader by calling close on the underlying reader.
      int getUnescapedUnicodeColumnCount()  
      int getUnescapedUnicodeOffsetCount()  
      int read()
      Gets the next character from the underlying reader, translating escapes as required.
      int read​(char[] cbuf, int off, int len)
      Reads characters from the underlying reader.
      void setLexer​(CharScanner lexer)
      Sets the lexer that is using this reader.
      • Methods inherited from class java.io.Reader

        mark, markSupported, nullReader, read, read, ready, reset, skip, transferTo
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • UnicodeEscapingReader

        public UnicodeEscapingReader​(java.io.Reader reader,
                                     SourceBuffer sourceBuffer)
        Constructor.
        Parameters:
        reader - The reader that this reader will filter over.
    • Method Detail

      • setLexer

        public void setLexer​(CharScanner lexer)
        Sets the lexer that is using this reader. Must be called before the lexer is used.
      • read

        public int read​(char[] cbuf,
                        int off,
                        int len)
                 throws java.io.IOException
        Reads characters from the underlying reader.
        Specified by:
        read in class java.io.Reader
        Throws:
        java.io.IOException
        See Also:
        Reader.read(char[],int,int)
      • read

        public int read()
                 throws java.io.IOException
        Gets the next character from the underlying reader, translating escapes as required.
        Overrides:
        read in class java.io.Reader
        Throws:
        java.io.IOException
        See Also:
        Reader.close()
      • getUnescapedUnicodeColumnCount

        public int getUnescapedUnicodeColumnCount()
      • getUnescapedUnicodeOffsetCount

        public int getUnescapedUnicodeOffsetCount()
      • close

        public void close()
                   throws java.io.IOException
        Closes this reader by calling close on the underlying reader.
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Specified by:
        close in class java.io.Reader
        Throws:
        java.io.IOException
        See Also:
        Reader.close()