Package ognl

Class JavaCharStream


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

      Constructors 
      Constructor Description
      JavaCharStream​(java.io.InputStream dstream)
      Constructor.
      JavaCharStream​(java.io.InputStream dstream, int startline, int startcolumn)
      Constructor.
      JavaCharStream​(java.io.InputStream dstream, int startline, int startcolumn, int buffersize)
      Constructor.
      JavaCharStream​(java.io.InputStream dstream, java.lang.String encoding)
      Constructor.
      JavaCharStream​(java.io.InputStream dstream, java.lang.String encoding, int startline, int startcolumn)
      Constructor.
      JavaCharStream​(java.io.InputStream dstream, java.lang.String encoding, int startline, int startcolumn, int buffersize)
      Constructor.
      JavaCharStream​(java.io.Reader dstream)
      Constructor.
      JavaCharStream​(java.io.Reader dstream, int startline, int startcolumn)
      Constructor.
      JavaCharStream​(java.io.Reader dstream, int startline, int startcolumn, int buffersize)
      Constructor.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      void adjustBeginLineColumn​(int newLine, int newCol)
      Method to adjust line and column numbers for the start of a token.
      protected void AdjustBuffSize()  
      void backup​(int amount)
      Retreat.
      char BeginToken()
      Begin processing a new token, returning the starting character for the token.
      void Done()
      Set buffers back to null when finished.
      protected void ExpandBuff​(boolean wrapAround)  
      protected void FillBuff()  
      int getBeginColumn()  
      int getBeginLine()  
      int getColumn()
      Deprecated. 
      int getEndColumn()
      Get end column.
      int getEndLine()
      Get end line.
      java.lang.String GetImage()  
      int getLine()
      Deprecated. 
      char[] GetSuffix​(int len)
      Get the suffix of the specified length.
      protected int getTabSize​(int i)  
      (package private) static int hexval​(char c)  
      protected char ReadByte()  
      char readChar()
      Read a character.
      void ReInit​(java.io.InputStream dstream)
      Reinitialise.
      void ReInit​(java.io.InputStream dstream, int startline, int startcolumn)
      Reinitialise.
      void ReInit​(java.io.InputStream dstream, int startline, int startcolumn, int buffersize)
      Reinitialise.
      void ReInit​(java.io.InputStream dstream, java.lang.String encoding)
      Reinitialise.
      void ReInit​(java.io.InputStream dstream, java.lang.String encoding, int startline, int startcolumn)
      Reinitialise.
      void ReInit​(java.io.InputStream dstream, java.lang.String encoding, int startline, int startcolumn, int buffersize)
      Reinitialise.
      void ReInit​(java.io.Reader dstream)
      Reinitialise.
      void ReInit​(java.io.Reader dstream, int startline, int startcolumn)
      Reinitialise.
      void ReInit​(java.io.Reader dstream, int startline, int startcolumn, int buffersize)
      Reinitialise.
      protected void setTabSize​(int i)  
      protected void UpdateLineColumn​(char c)  
      • Methods inherited from class java.lang.Object

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

      • staticFlag

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

        public int bufpos
        Position in buffer.
      • bufsize

        int bufsize
      • available

        int available
      • tokenBegin

        int tokenBegin
      • 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 java.io.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
    • Constructor Detail

      • JavaCharStream

        public JavaCharStream​(java.io.Reader dstream,
                              int startline,
                              int startcolumn,
                              int buffersize)
        Constructor.
        Parameters:
        dstream - the datastream to read from.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
        buffersize - the size of the initial buffer to use to process the dstream.
      • JavaCharStream

        public JavaCharStream​(java.io.Reader dstream,
                              int startline,
                              int startcolumn)
        Constructor.
        Parameters:
        dstream - the datastream to read from.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
      • JavaCharStream

        public JavaCharStream​(java.io.Reader dstream)
        Constructor.
        Parameters:
        dstream - the datastream to read from.
      • JavaCharStream

        public JavaCharStream​(java.io.InputStream dstream,
                              java.lang.String encoding,
                              int startline,
                              int startcolumn,
                              int buffersize)
                       throws java.io.UnsupportedEncodingException
        Constructor.
        Parameters:
        dstream - the datastream to read from.
        encoding - the encoding to use for the dstream.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
        buffersize - the size of the initial buffer to use to process the dstream.
        Throws:
        java.io.UnsupportedEncodingException - if the chosen encoding is not supported.
      • JavaCharStream

        public JavaCharStream​(java.io.InputStream dstream,
                              int startline,
                              int startcolumn,
                              int buffersize)
        Constructor.
        Parameters:
        dstream - the datastream to read from.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
        buffersize - the size of the initial buffer to use to process the dstream.
      • JavaCharStream

        public JavaCharStream​(java.io.InputStream dstream,
                              java.lang.String encoding,
                              int startline,
                              int startcolumn)
                       throws java.io.UnsupportedEncodingException
        Constructor.
        Parameters:
        dstream - the datastream to read from.
        encoding - the encoding to use for the dstream.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
        Throws:
        java.io.UnsupportedEncodingException - if the chosen encoding is not supported.
      • JavaCharStream

        public JavaCharStream​(java.io.InputStream dstream,
                              int startline,
                              int startcolumn)
        Constructor.
        Parameters:
        dstream - the datastream to read from.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
      • JavaCharStream

        public JavaCharStream​(java.io.InputStream dstream,
                              java.lang.String encoding)
                       throws java.io.UnsupportedEncodingException
        Constructor.
        Parameters:
        dstream - the datastream to read from.
        encoding - the encoding to use for the dstream.
        Throws:
        java.io.UnsupportedEncodingException - if the chosen encoding is not supported.
      • JavaCharStream

        public JavaCharStream​(java.io.InputStream dstream)
        Constructor.
        Parameters:
        dstream - the datastream to read from.
    • Method Detail

      • hexval

        static final int hexval​(char c)
                         throws java.io.IOException
        Throws:
        java.io.IOException
      • setTabSize

        protected void setTabSize​(int i)
      • getTabSize

        protected int getTabSize​(int i)
      • ExpandBuff

        protected void ExpandBuff​(boolean wrapAround)
      • FillBuff

        protected void FillBuff()
                         throws java.io.IOException
        Throws:
        java.io.IOException
      • ReadByte

        protected char ReadByte()
                         throws java.io.IOException
        Throws:
        java.io.IOException
      • BeginToken

        public char BeginToken()
                        throws java.io.IOException
        Begin processing a new token, returning the starting character for the token.
        Returns:
        starting character for token.
        Throws:
        java.io.IOException - if the operation fails a read operation.
      • AdjustBuffSize

        protected void AdjustBuffSize()
      • UpdateLineColumn

        protected void UpdateLineColumn​(char c)
      • readChar

        public char readChar()
                      throws java.io.IOException
        Read a character.
        Returns:
        the character that was read for processing.
        Throws:
        java.io.IOException - if the operation fails a read operation.
      • getColumn

        public int getColumn()
        Deprecated.
        Get the current column number.
        Returns:
        the current column number.
        See Also:
        getEndColumn()
      • getLine

        public int getLine()
        Deprecated.
        Get the current line number.
        Returns:
        the current line number.
        See Also:
        getEndLine()
      • getEndColumn

        public int getEndColumn()
        Get end column.
        Returns:
        the end column number.
      • getEndLine

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

        public int getBeginColumn()
        Returns:
        column of token start
      • getBeginLine

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

        public void backup​(int amount)
        Retreat.
        Parameters:
        amount - the amount to backup (retreat) in the stream.
      • ReInit

        public void ReInit​(java.io.Reader dstream,
                           int startline,
                           int startcolumn,
                           int buffersize)
        Reinitialise.
        Parameters:
        dstream - the datastream to read from.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
        buffersize - the size of the initial buffer to use to process the dstream.
      • ReInit

        public void ReInit​(java.io.Reader dstream,
                           int startline,
                           int startcolumn)
        Reinitialise.
        Parameters:
        dstream - the datastream to read from.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
      • ReInit

        public void ReInit​(java.io.Reader dstream)
        Reinitialise.
        Parameters:
        dstream - the datastream to read from.
      • ReInit

        public void ReInit​(java.io.InputStream dstream,
                           java.lang.String encoding,
                           int startline,
                           int startcolumn,
                           int buffersize)
                    throws java.io.UnsupportedEncodingException
        Reinitialise.
        Parameters:
        dstream - the datastream to read from.
        encoding - the encoding to use for the dstream.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
        buffersize - the size of the initial buffer to use to process the dstream.
        Throws:
        java.io.UnsupportedEncodingException - if the chosen encoding is not supported.
      • ReInit

        public void ReInit​(java.io.InputStream dstream,
                           int startline,
                           int startcolumn,
                           int buffersize)
        Reinitialise.
        Parameters:
        dstream - the datastream to read from.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
        buffersize - the size of the initial buffer to use to process the dstream.
      • ReInit

        public void ReInit​(java.io.InputStream dstream,
                           java.lang.String encoding,
                           int startline,
                           int startcolumn)
                    throws java.io.UnsupportedEncodingException
        Reinitialise.
        Parameters:
        dstream - the datastream to read from.
        encoding - the encoding to use for the dstream.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
        Throws:
        java.io.UnsupportedEncodingException - if the chosen encoding is not supported.
      • ReInit

        public void ReInit​(java.io.InputStream dstream,
                           int startline,
                           int startcolumn)
        Reinitialise.
        Parameters:
        dstream - the datastream to read from.
        startline - the line number to start processing from.
        startcolumn - the column number to start processing from.
      • ReInit

        public void ReInit​(java.io.InputStream dstream,
                           java.lang.String encoding)
                    throws java.io.UnsupportedEncodingException
        Reinitialise.
        Parameters:
        dstream - the datastream to read from.
        encoding - the encoding to use for the dstream.
        Throws:
        java.io.UnsupportedEncodingException - if the chosen encoding is not supported.
      • ReInit

        public void ReInit​(java.io.InputStream dstream)
        Reinitialise.
        Parameters:
        dstream - the datastream to read from.
      • GetImage

        public java.lang.String GetImage()
        Returns:
        token image as String
      • GetSuffix

        public char[] GetSuffix​(int len)
        Get the suffix of the specified length.
        Parameters:
        len - the length of the suffix to get.
        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 for the start of a token.
        newCol - the new column number for the start of a token.