## bsh
Class JavaCharStream

    java.lang.Object
      bsh.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).

Field Summary
`protected int[]` `bufcolumn`
`protected char[]` `buffer`
`protected int[]` `bufline`
`int` `bufpos`
`protected int` `column`
`protected int` `inBuf`
`protected java.io.Reader` `inputStream`
`protected int` `line`
`protected int` `maxNextCharInd`
`protected char[]` `nextCharBuf`
`protected int` `nextCharInd`
`protected boolean` `prevCharIsCR`
`protected boolean` `prevCharIsLF`
`static boolean` `staticFlag`

Constructor Summary
`JavaCharStream(java.io.InputStream dstream)`
`JavaCharStream(java.io.InputStream dstream, int startline, int startcolumn)`
`JavaCharStream(java.io.InputStream dstream, int startline, int startcolumn, int buffersize)`
`JavaCharStream(java.io.Reader dstream)`
`JavaCharStream(java.io.Reader dstream, int startline, int startcolumn)`
`JavaCharStream(java.io.Reader dstream, int startline, int startcolumn, int buffersize)`

Method Summary
`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)`
`char` `BeginToken()`
`void` `Done()`
`protected void` `ExpandBuff(boolean wrapAround)`
`protected void` `FillBuff()`
`int` `getBeginColumn()`
`int` `getBeginLine()`
`int` `getColumn()` Deprecated.
`int` `getEndColumn()`
`int` `getEndLine()`
`java.lang.String` `GetImage()`
`int` `getLine()` Deprecated.
`char[]` `GetSuffix(int len)`
`protected char` `ReadByte()`
`char` `readChar()`
`void` `ReInit(java.io.InputStream dstream)`
`void` `ReInit(java.io.InputStream dstream, int startline, int startcolumn)`
`void` `ReInit(java.io.InputStream dstream, int startline, int startcolumn, int buffersize)`
`void` `ReInit(java.io.Reader dstream)`
`void` `ReInit(java.io.Reader dstream, int startline, int startcolumn)`
`void` `ReInit(java.io.Reader dstream, int startline, int startcolumn, int buffersize)`
`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

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 java.io.Reader inputStream

### nextCharBuf

    protected char[] nextCharBuf

### buffer

    protected char[] buffer

### maxNextCharInd

    protected int maxNextCharInd

### nextCharInd

    protected int nextCharInd

### inBuf

    protected int inBuf

Constructor Detail

### JavaCharStream

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

### JavaCharStream

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

### JavaCharStream

    public JavaCharStream(java.io.Reader dstream)

### JavaCharStream

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

### JavaCharStream

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

### JavaCharStream

    public JavaCharStream(java.io.InputStream dstream)

Method Detail

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

  Throws:
    `java.io.IOException`

### AdjustBuffSize

    protected void AdjustBuffSize()

### UpdateLineColumn

    protected void UpdateLineColumn(char c)

### readChar

    public char readChar()
                  throws java.io.IOException

  Throws:
    `java.io.IOException`

### getColumn

    public int getColumn()

  Deprecated.

  See Also:
    `getEndColumn()`

### getLine

    public int getLine()

  Deprecated.

  See Also:
    `getEndLine()`

### getEndColumn

    public int getEndColumn()

### getEndLine

    public int getEndLine()

### getBeginColumn

    public int getBeginColumn()

### getBeginLine

    public int getBeginLine()

### backup

    public void backup(int amount)

### ReInit

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

### ReInit

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

### ReInit

    public void ReInit(java.io.Reader dstream)

### ReInit

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

### ReInit

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

### ReInit

    public void ReInit(java.io.InputStream dstream)

### GetImage

    public java.lang.String GetImage()

### GetSuffix

    public char[] GetSuffix(int len)

### Done

    public void Done()

### adjustBeginLineColumn

    public void adjustBeginLineColumn(int newLine,
                                      int newCol)

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