Package org.zkoss.zel.impl.parser

## Class SimpleCharStream

- java.lang.Object
- - org.zkoss.zel.impl.parser.SimpleCharStream

-     public class SimpleCharStream
      extends java.lang.Object

  An implementation of interface CharStream, where the stream is assumed to contain only ASCII characters (without unicode processing).

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected int[]` | `bufcolumn` |
    `protected char[]` | `buffer` |
    `protected int[]` | `bufline` |
    `int` | `bufpos` | Position in buffer.
    `protected int` | `column` |
    `protected int` | `inBuf` |
    `protected java.io.Reader` | `inputStream` |
    `protected int` | `line` |
    `protected int` | `maxNextCharInd` |
    `protected boolean` | `prevCharIsCR` |
    `protected boolean` | `prevCharIsLF` |
    `static boolean` | `staticFlag` | Whether parser is static.
    `protected int` | `tabSize` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SimpleCharStream​(java.io.InputStream dstream)` | Constructor.
    `SimpleCharStream​(java.io.InputStream dstream, int startline, int startcolumn)` | Constructor.
    `SimpleCharStream​(java.io.InputStream dstream, int startline, int startcolumn, int buffersize)` | Constructor.
    `SimpleCharStream​(java.io.InputStream dstream, java.lang.String encoding)` | Constructor.
    `SimpleCharStream​(java.io.InputStream dstream, java.lang.String encoding, int startline, int startcolumn)` | Constructor.
    `SimpleCharStream​(java.io.InputStream dstream, java.lang.String encoding, int startline, int startcolumn, int buffersize)` | Constructor.
    `SimpleCharStream​(java.io.Reader dstream)` | Constructor.
    `SimpleCharStream​(java.io.Reader dstream, int startline, int startcolumn)` | Constructor.
    `SimpleCharStream​(java.io.Reader dstream, int startline, int startcolumn, int buffersize)` | Constructor.

  - ### Method Summary

    All Methods Instance Methods Concrete 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.
    `void` | `backup​(int amount)` | Backup a number of characters.
    `char` | `BeginToken()` | Start.
    `void` | `Done()` | Reset buffer when finished.
    `protected void` | `ExpandBuff​(boolean wrapAround)` |
    `protected void` | `FillBuff()` |
    `int` | `getBeginColumn()` | Get token beginning column number.
    `int` | `getBeginLine()` | Get token beginning line number.
    `int` | `getEndColumn()` | Get token end column number.
    `int` | `getEndLine()` | Get token end line number.
    `java.lang.String` | `GetImage()` | Get token literal value.
    `char[]` | `GetSuffix​(int len)` | Get the suffix.
    `protected int` | `getTabSize​(int i)` |
    `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.

    - #### 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

    - #### buffer

          protected char[] buffer

    - #### maxNextCharInd

          protected int maxNextCharInd

    - #### inBuf

          protected int inBuf

    - #### tabSize

          protected int tabSize

  - ### Constructor Detail

    - #### SimpleCharStream

          public SimpleCharStream​(java.io.Reader dstream,
                                  int startline,
                                  int startcolumn,
                                  int buffersize)

      Constructor.

    - #### SimpleCharStream

          public SimpleCharStream​(java.io.Reader dstream,
                                  int startline,
                                  int startcolumn)

      Constructor.

    - #### SimpleCharStream

          public SimpleCharStream​(java.io.Reader dstream)

      Constructor.

    - #### SimpleCharStream

          public SimpleCharStream​(java.io.InputStream dstream,
                                  java.lang.String encoding,
                                  int startline,
                                  int startcolumn,
                                  int buffersize)
                           throws java.io.UnsupportedEncodingException

      Constructor.
      Throws:
        `java.io.UnsupportedEncodingException`

    - #### SimpleCharStream

          public SimpleCharStream​(java.io.InputStream dstream,
                                  int startline,
                                  int startcolumn,
                                  int buffersize)

      Constructor.

    - #### SimpleCharStream

          public SimpleCharStream​(java.io.InputStream dstream,
                                  java.lang.String encoding,
                                  int startline,
                                  int startcolumn)
                           throws java.io.UnsupportedEncodingException

      Constructor.
      Throws:
        `java.io.UnsupportedEncodingException`

    - #### SimpleCharStream

          public SimpleCharStream​(java.io.InputStream dstream,
                                  int startline,
                                  int startcolumn)

      Constructor.

    - #### SimpleCharStream

          public SimpleCharStream​(java.io.InputStream dstream,
                                  java.lang.String encoding)
                           throws java.io.UnsupportedEncodingException

      Constructor.
      Throws:
        `java.io.UnsupportedEncodingException`

    - #### SimpleCharStream

          public SimpleCharStream​(java.io.InputStream dstream)

      Constructor.

  - ### Method Detail

    - #### 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`

    - #### BeginToken

          public char BeginToken()
                          throws java.io.IOException

      Start.
      Throws:
        `java.io.IOException`

    - #### UpdateLineColumn

          protected void UpdateLineColumn​(char c)

    - #### readChar

          public char readChar()
                        throws java.io.IOException

      Read a character.
      Throws:
        `java.io.IOException`

    - #### getEndColumn

          public int getEndColumn()

      Get token end column number.

    - #### getEndLine

          public int getEndLine()

      Get token end line number.

    - #### getBeginColumn

          public int getBeginColumn()

      Get token beginning column number.

    - #### getBeginLine

          public int getBeginLine()

      Get token beginning line number.

    - #### backup

          public void backup​(int amount)

      Backup a number of characters.

    - #### ReInit

          public void ReInit​(java.io.Reader dstream,
                             int startline,
                             int startcolumn,
                             int buffersize)

      Reinitialise.

    - #### ReInit

          public void ReInit​(java.io.Reader dstream,
                             int startline,
                             int startcolumn)

      Reinitialise.

    - #### ReInit

          public void ReInit​(java.io.Reader dstream)

      Reinitialise.

    - #### ReInit

          public void ReInit​(java.io.InputStream dstream,
                             java.lang.String encoding,
                             int startline,
                             int startcolumn,
                             int buffersize)
                      throws java.io.UnsupportedEncodingException

      Reinitialise.
      Throws:
        `java.io.UnsupportedEncodingException`

    - #### ReInit

          public void ReInit​(java.io.InputStream dstream,
                             int startline,
                             int startcolumn,
                             int buffersize)

      Reinitialise.

    - #### ReInit

          public void ReInit​(java.io.InputStream dstream,
                             java.lang.String encoding)
                      throws java.io.UnsupportedEncodingException

      Reinitialise.
      Throws:
        `java.io.UnsupportedEncodingException`

    - #### ReInit

          public void ReInit​(java.io.InputStream dstream)

      Reinitialise.

    - #### ReInit

          public void ReInit​(java.io.InputStream dstream,
                             java.lang.String encoding,
                             int startline,
                             int startcolumn)
                      throws java.io.UnsupportedEncodingException

      Reinitialise.
      Throws:
        `java.io.UnsupportedEncodingException`

    - #### ReInit

          public void ReInit​(java.io.InputStream dstream,
                             int startline,
                             int startcolumn)

      Reinitialise.

    - #### GetImage

          public java.lang.String GetImage()

      Get token literal value.

    - #### GetSuffix

          public char[] GetSuffix​(int len)

      Get the suffix.

    - #### Done

          public void Done()

      Reset buffer when finished.

    - #### adjustBeginLineColumn

          public void adjustBeginLineColumn​(int newLine,
                                            int newCol)

      Method to adjust line and column numbers for the start of a token.