Package ghidra.app.util.cparser.CPP

# Class SimpleCharStream

java.lang.Object
ghidra.app.util.cparser.CPP.SimpleCharStream

public class SimpleCharStream extends 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 Reader`
  `inputStream`
  `protected int`
  `line`
  `protected int`
  `maxNextCharInd`
  `protected boolean`
  `prevCharIsCR`
  `protected boolean`
  `prevCharIsLF`
  `static final boolean`
  `staticFlag`
  Whether parser is static.
  `protected int`
  `tabSize`

- ## Constructor Summary

  Constructors
  Constructor
  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

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

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

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

  - ### 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.
    Throws:
      `IOException`

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

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