japa.parser

## Class JavaCharStream

- java.lang.Object
- - japa.parser.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 Summary

Fields
`protected int[]` `bufcolumn`
`protected char[]` `buffer`
`protected int[]` `bufline`
`int` `bufpos` Position in buffer.
`protected int` `column`
`protected int` `inBuf`
`protected Reader` `inputStream`
`protected int` `line`
`protected int` `maxNextCharInd`
`protected char[]` `nextCharBuf`
`protected int` `nextCharInd`
`protected boolean` `prevCharIsCR`
`protected boolean` `prevCharIsLF`
`static boolean` `staticFlag` Whether parser is static.
`protected int` `tabSize`

### Constructor Summary

Constructors
Constructor and Description
`JavaCharStream(InputStream dstream)` Constructor.
`JavaCharStream(InputStream dstream, int startline, int startcolumn)` Constructor.
`JavaCharStream(InputStream dstream, int startline, int startcolumn, int buffersize)` Constructor.
`JavaCharStream(InputStream dstream, String encoding)` Constructor.
`JavaCharStream(InputStream dstream, String encoding, int startline, int startcolumn)` Constructor.
`JavaCharStream(InputStream dstream, String encoding, int startline, int startcolumn, int buffersize)` Constructor.
`JavaCharStream(Reader dstream)` Constructor.
`JavaCharStream(Reader dstream, int startline, int startcolumn)` Constructor.
`JavaCharStream(Reader dstream, int startline, int startcolumn, int buffersize)` Constructor.

### Method Summary

Methods
`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()`
`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.
`String` `GetImage()`
`int` `getLine()` Deprecated.
`char[]` `GetSuffix(int len)`
`protected int` `getTabSize(int i)`
`protected char` `ReadByte()`
`char` `readChar()` Read a character.
`void` `ReInit(InputStream dstream)` Reinitialise.
`void` `ReInit(InputStream dstream, int startline, int startcolumn)` Reinitialise.
`void` `ReInit(InputStream dstream, int startline, int startcolumn, int buffersize)` Reinitialise.
`void` `ReInit(InputStream dstream, String encoding)` Reinitialise.
`void` `ReInit(InputStream dstream, String encoding, int startline, int startcolumn)` Reinitialise.
`void` `ReInit(InputStream dstream, String encoding, int startline, int startcolumn, int buffersize)` Reinitialise.
`void` `ReInit(Reader dstream)` Reinitialise.
`void` `ReInit(Reader dstream, int startline, int startcolumn)` Reinitialise.
`void` `ReInit(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 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(Reader dstream,
                  int startline,
                  int startcolumn,
                  int buffersize)

Constructor.

#### JavaCharStream

    public JavaCharStream(Reader dstream,
                  int startline,
                  int startcolumn)

Constructor.

#### JavaCharStream

    public JavaCharStream(Reader dstream)

Constructor.

#### JavaCharStream

    public JavaCharStream(InputStream dstream,
                  String encoding,
                  int startline,
                  int startcolumn,
                  int buffersize)
                   throws UnsupportedEncodingException

Constructor.

Throws:
  `UnsupportedEncodingException`

#### JavaCharStream

    public JavaCharStream(InputStream dstream,
                  int startline,
                  int startcolumn,
                  int buffersize)

Constructor.

#### JavaCharStream

    public JavaCharStream(InputStream dstream,
                  String encoding,
                  int startline,
                  int startcolumn)
                   throws UnsupportedEncodingException

Constructor.

Throws:
  `UnsupportedEncodingException`

#### JavaCharStream

    public JavaCharStream(InputStream dstream,
                  int startline,
                  int startcolumn)

Constructor.

#### JavaCharStream

    public JavaCharStream(InputStream dstream,
                  String encoding)
                   throws UnsupportedEncodingException

Constructor.

Throws:
  `UnsupportedEncodingException`

#### JavaCharStream

    public JavaCharStream(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 IOException

Throws:
  `IOException`

#### ReadByte

    protected char ReadByte()
                     throws IOException

Throws:
  `IOException`

#### BeginToken

    public char BeginToken()
                    throws IOException

Returns:
  starting character for token.
Throws:
  `IOException`

#### AdjustBuffSize

    protected void AdjustBuffSize()

#### UpdateLineColumn

    protected void UpdateLineColumn(char c)

#### readChar

    public char readChar()
                  throws IOException

Read a character.

Throws:
  `IOException`

#### getColumn

    @Deprecated
    public int getColumn()

Deprecated.

#### getLine

    @Deprecated
    public int getLine()

Deprecated.

#### getEndColumn

    public int getEndColumn()

Get end column.

#### getEndLine

    public int getEndLine()

Get end line.

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

#### ReInit

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

Reinitialise.

#### ReInit

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

Reinitialise.

#### ReInit

    public void ReInit(Reader dstream)

Reinitialise.

#### ReInit

    public void ReInit(InputStream dstream,
              String encoding,
              int startline,
              int startcolumn,
              int buffersize)
                throws UnsupportedEncodingException

Reinitialise.

Throws:
  `UnsupportedEncodingException`

#### ReInit

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

Reinitialise.

#### ReInit

    public void ReInit(InputStream dstream,
              String encoding,
              int startline,
              int startcolumn)
                throws UnsupportedEncodingException

Reinitialise.

Throws:
  `UnsupportedEncodingException`

#### ReInit

    public void ReInit(InputStream dstream,
              int startline,
              int startcolumn)

Reinitialise.

#### ReInit

    public void ReInit(InputStream dstream,
              String encoding)
                throws UnsupportedEncodingException

Reinitialise.

Throws:
  `UnsupportedEncodingException`

#### ReInit

    public void ReInit(InputStream dstream)

Reinitialise.

#### GetImage

    public String GetImage()

Returns:
  token image as String

#### GetSuffix

    public char[] GetSuffix(int len)

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.