Class JavaCharStream


  • public class JavaCharStream
    extends Object
    An implementation of interface CharStream, where the stream is assumed to contain only ASCII characters (with java-like unicode escape processing).
    • Field Detail

      • staticFlag

        public static final boolean staticFlag
        Whether parser is static.
        See Also:
        Constant Field Values
      • bufpos

        public int bufpos
      • bufline

        protected int[] bufline
      • bufcolumn

        protected int[] bufcolumn
      • column

        protected int column
      • line

        protected int line
      • prevCharIsCR

        protected boolean prevCharIsCR
      • prevCharIsLF

        protected boolean prevCharIsLF
      • inputStream

        protected Reader inputStream
      • nextCharBuf

        protected char[] nextCharBuf
      • buffer

        protected char[] buffer
      • maxNextCharInd

        protected int maxNextCharInd
      • nextCharInd

        protected int nextCharInd
      • inBuf

        protected int inBuf
      • tabSize

        protected int tabSize
      • trackLineColumn

        protected boolean trackLineColumn
    • Constructor Detail

      • JavaCharStream

        public JavaCharStream​(Reader dstream,
                              int startline,
                              int startcolumn,
                              int buffersize)
        Constructor.
        Parameters:
        dstream - the underlying data source.
        startline - line number of the first character of the stream, mostly for error messages.
        startcolumn - column number of the first character of the stream.
        buffersize - size of the buffer
      • JavaCharStream

        public JavaCharStream​(Reader dstream,
                              int startline,
                              int startcolumn)
        Constructor.
        Parameters:
        dstream - the underlying data source.
        startline - line number of the first character of the stream, mostly for error messages.
        startcolumn - column number of the first character of the stream.
      • JavaCharStream

        public JavaCharStream​(Reader dstream)
        Constructor.
        Parameters:
        dstream - the underlying data source.
        startline - line number of the first character of the stream, mostly for error messages.
      • JavaCharStream

        public JavaCharStream​(InputStream dstream,
                              int startline,
                              int startcolumn,
                              int buffersize)
        Constructor.
        Parameters:
        dstream - the underlying data source.
        startline - line number of the first character of the stream, mostly for error messages.
        startcolumn - column number of the first character of the stream.
        buffersize - size of the buffer
      • JavaCharStream

        public JavaCharStream​(InputStream dstream,
                              String encoding,
                              int startline,
                              int startcolumn)
                       throws UnsupportedEncodingException
        Constructor.
        Parameters:
        dstream - the underlying data source.
        encoding - the character encoding of the data stream.
        startline - line number of the first character of the stream, mostly for error messages.
        startcolumn - column number of the first character of the stream.
        Throws:
        UnsupportedEncodingException - encoding is invalid or unsupported.
      • JavaCharStream

        public JavaCharStream​(InputStream dstream,
                              int startline,
                              int startcolumn)
        Constructor.
        Parameters:
        dstream - the underlying data source.
        startline - line number of the first character of the stream, mostly for error messages.
        startcolumn - column number of the first character of the stream.
      • JavaCharStream

        public JavaCharStream​(InputStream dstream,
                              String encoding)
                       throws UnsupportedEncodingException
        Constructor.
        Parameters:
        dstream - the underlying data source.
        encoding - the character encoding of the data stream.
        Throws:
        UnsupportedEncodingException - encoding is invalid or unsupported.
      • JavaCharStream

        public JavaCharStream​(InputStream dstream)
        Constructor.
        Parameters:
        dstream - the underlying data source.
    • Method Detail

      • setTabSize

        public void setTabSize​(int i)
      • getTabSize

        public int getTabSize()
      • ExpandBuff

        protected void ExpandBuff​(boolean wrapAround)
      • AdjustBuffSize

        protected void AdjustBuffSize()
      • UpdateLineColumn

        protected void UpdateLineColumn​(char c)
      • getColumn

        @Deprecated
        public int getColumn()
        Deprecated.
      • getLine

        @Deprecated
        public int getLine()
        Deprecated.
      • getEndColumn

        public int getEndColumn()
        Get end column.
        Returns:
        the end column or -1
      • getEndLine

        public int getEndLine()
        Get end line.
        Returns:
        the end line number or -1
      • getBeginColumn

        public int getBeginColumn()
        Get the beginning column.
        Returns:
        column of token start
      • getBeginLine

        public int getBeginLine()
        Returns:
        line number of token start
      • backup

        public void backup​(int amount)
        Retreat.
      • ReInit

        public void ReInit​(Reader dstream,
                           int startline,
                           int startcolumn,
                           int buffersize)
      • ReInit

        public void ReInit​(Reader dstream,
                           int startline,
                           int startcolumn)
      • ReInit

        public void ReInit​(Reader dstream)
      • ReInit

        public void ReInit​(InputStream dstream,
                           String encoding,
                           int startline,
                           int startcolumn,
                           int buffersize)
                    throws UnsupportedEncodingException
        Reinitialise.
        Parameters:
        dstream - the underlying data source.
        encoding - the character encoding of the data stream.
        startline - line number of the first character of the stream, mostly for error messages.
        startcolumn - column number of the first character of the stream.
        buffersize - size of the buffer
        Throws:
        UnsupportedEncodingException
      • ReInit

        public void ReInit​(InputStream dstream,
                           int startline,
                           int startcolumn,
                           int buffersize)
        Reinitialise.
        Parameters:
        dstream - the underlying data source.
        startline - line number of the first character of the stream, mostly for error messages.
        startcolumn - column number of the first character of the stream.
        buffersize - size of the buffer
      • ReInit

        public void ReInit​(InputStream dstream,
                           String encoding,
                           int startline,
                           int startcolumn)
                    throws UnsupportedEncodingException
        Reinitialise.
        Parameters:
        dstream - the underlying data source.
        encoding - the character encoding of the data stream.
        startline - line number of the first character of the stream, mostly for error messages.
        startcolumn - column number of the first character of the stream.
        Throws:
        UnsupportedEncodingException - encoding is invalid or unsupported.
      • ReInit

        public void ReInit​(InputStream dstream,
                           int startline,
                           int startcolumn)
        Reinitialise.
        Parameters:
        dstream - the underlying data source.
        startline - line number of the first character of the stream, mostly for error messages.
        startcolumn - column number of the first character of the stream.
      • ReInit

        public void ReInit​(InputStream dstream,
                           String encoding)
                    throws UnsupportedEncodingException
        Reinitialise.
        Parameters:
        dstream - the underlying data source.
        encoding - the character encoding of the data stream.
        Throws:
        UnsupportedEncodingException - encoding is invalid or unsupported.
      • ReInit

        public void ReInit​(InputStream dstream)
        Reinitialise.
        Parameters:
        dstream - the underlying data source.
      • GetImage

        public String GetImage()
        Get the token timage.
        Returns:
        token image as String
      • GetSuffix

        public char[] GetSuffix​(int len)
        Get the suffix as an array of characters.
        Parameters:
        len - the length of the array to return.
        Returns:
        suffix
      • Done

        public void Done()
        Set buffers back to null when finished.
      • adjustBeginLineColumn

        public void adjustBeginLineColumn​(int newLine,
                                          int newCol)
        Method to adjust line and column numbers for the start of a token.
        Parameters:
        newLine - the new line number.
        newCol - the new column number.