net.sourceforge.pmd.lang.ast

## Class SimpleCharStream

- java.lang.Object
- - net.sourceforge.pmd.lang.ast.SimpleCharStream

All Implemented Interfaces:
  CharStream

    public class SimpleCharStream
    extends Object
    implements CharStream

An implementation of interface CharStream, where the stream is assumed to contain only ASCII characters (without unicode 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 boolean` `prevCharIsCR`
`protected boolean` `prevCharIsLF`
`static boolean` `staticFlag` Whether parser is static.
`protected int` `tabSize`

### Constructor Summary

Constructors
Constructor and Description
`SimpleCharStream(InputStream dstream)` Constructor.
`SimpleCharStream(InputStream dstream, int startline, int startcolumn)` Constructor.
`SimpleCharStream(InputStream dstream, int startline, int startcolumn, int buffersize)` Constructor.
`SimpleCharStream(InputStream dstream, String encoding)` Constructor.
`SimpleCharStream(InputStream dstream, String encoding, int startline, int startcolumn)` Constructor.
`SimpleCharStream(InputStream dstream, String encoding, int startline, int startcolumn, int buffersize)` Constructor.
`SimpleCharStream(Reader dstream)` Constructor.
`SimpleCharStream(Reader dstream, int startline, int startcolumn)` Constructor.
`SimpleCharStream(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.
`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` `getColumn()` Deprecated.
`int` `getEndColumn()` Get token end column number.
`int` `getEndLine()` Get token end line number.
`String` `GetImage()` Get token literal value.
`int` `getLine()` Deprecated.
`char[]` `GetSuffix(int len)` Get the suffix.
`protected int` `getTabSize(int i)`
`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

#### buffer

    protected char[] buffer

#### maxNextCharInd

    protected int maxNextCharInd

#### inBuf

    protected int inBuf

#### tabSize

    protected int tabSize

### Constructor Detail

#### SimpleCharStream

    public SimpleCharStream(Reader dstream,
                    int startline,
                    int startcolumn,
                    int buffersize)

Constructor.

#### SimpleCharStream

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

Constructor.

#### SimpleCharStream

    public SimpleCharStream(Reader dstream)

Constructor.

#### SimpleCharStream

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

Constructor.

Throws:
  `UnsupportedEncodingException`

#### SimpleCharStream

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

Constructor.

#### SimpleCharStream

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

Constructor.

Throws:
  `UnsupportedEncodingException`

#### SimpleCharStream

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

Constructor.

#### SimpleCharStream

    public SimpleCharStream(InputStream dstream,
                    String encoding)
                     throws UnsupportedEncodingException

Constructor.

Throws:
  `UnsupportedEncodingException`

#### SimpleCharStream

    public SimpleCharStream(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`

#### BeginToken

    public char BeginToken()
                    throws IOException

Start.

Specified by:
  `BeginToken` in interface `CharStream`
Throws:
  `IOException`

#### UpdateLineColumn

    protected void UpdateLineColumn(char c)

#### readChar

    public char readChar()
                  throws IOException

Read a character.

Specified by:
  `readChar` in interface `CharStream`
Throws:
  `IOException`

#### getColumn

    public int getColumn()

Deprecated.
Description copied from interface: `CharStream`
Returns the column position of the character last read.

Specified by:
  `getColumn` in interface `CharStream`
See Also:
  `getEndColumn()`

#### getLine

    public int getLine()

Deprecated.
Description copied from interface: `CharStream`
Returns the line number of the character last read.

Specified by:
  `getLine` in interface `CharStream`
See Also:
  `getEndLine()`

#### getEndColumn

    public int getEndColumn()

Get token end column number.

Specified by:
  `getEndColumn` in interface `CharStream`

#### getEndLine

    public int getEndLine()

Get token end line number.

Specified by:
  `getEndLine` in interface `CharStream`

#### getBeginColumn

    public int getBeginColumn()

Get token beginning column number.

Specified by:
  `getBeginColumn` in interface `CharStream`

#### getBeginLine

    public int getBeginLine()

Get token beginning line number.

Specified by:
  `getBeginLine` in interface `CharStream`

#### backup

    public void backup(int amount)

Backup a number of characters.

Specified by:
  `backup` in interface `CharStream`

#### 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)
                throws UnsupportedEncodingException

Reinitialise.

Throws:
  `UnsupportedEncodingException`

#### ReInit

    public void ReInit(InputStream dstream)

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.

#### GetImage

    public String GetImage()

Get token literal value.

Specified by:
  `GetImage` in interface `CharStream`

#### GetSuffix

    public char[] GetSuffix(int len)

Get the suffix.

Specified by:
  `GetSuffix` in interface `CharStream`

#### Done

    public void Done()

Reset buffer when finished.

Specified by:
  `Done` in interface `CharStream`

#### adjustBeginLineColumn

    public void adjustBeginLineColumn(int newLine,
                             int newCol)

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