sota.lang.java.ast.parser
Class JavaCharStream

java.lang.Object
  extended by sota.lang.java.ast.parser.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
(package private) static int available
           
protected static int[] bufcolumn
           
protected static char[] buffer
           
protected static int[] bufline
           
static int bufpos
           
(package private) static int bufsize
           
protected static int column
           
protected static int inBuf
           
protected static java.io.Reader inputStream
           
protected static int line
           
protected static int maxNextCharInd
           
protected static char[] nextCharBuf
           
protected static int nextCharInd
           
protected static boolean prevCharIsCR
           
protected static boolean prevCharIsLF
           
static boolean staticFlag
           
protected static int tabSize
           
(package private) static int tokenBegin
           
 
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.InputStream dstream, java.lang.String encoding)
           
JavaCharStream(java.io.InputStream dstream, java.lang.String encoding, int startline, int startcolumn)
           
JavaCharStream(java.io.InputStream dstream, java.lang.String encoding, 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
static void adjustBeginLineColumn(int newLine, int newCol)
          Method to adjust line and column numbers for the start of a token.
protected static void AdjustBuffSize()
           
static void backup(int amount)
           
static char BeginToken()
           
static void Done()
           
protected static void ExpandBuff(boolean wrapAround)
           
protected static void FillBuff()
           
static int getBeginColumn()
           
static int getBeginLine()
           
static int getEndColumn()
           
static int getEndLine()
           
static java.lang.String GetImage()
           
static char[] GetSuffix(int len)
           
protected static int getTabSize(int i)
           
(package private) static int hexval(char c)
           
protected static char ReadByte()
           
static 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.InputStream dstream, java.lang.String encoding)
           
 void ReInit(java.io.InputStream dstream, java.lang.String encoding, int startline, int startcolumn)
           
 void ReInit(java.io.InputStream dstream, java.lang.String encoding, 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 static void setTabSize(int i)
           
protected static void UpdateLineColumn(char c)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

available

static int available

bufcolumn

protected static int[] bufcolumn

buffer

protected static char[] buffer

bufline

protected static int[] bufline

bufpos

public static int bufpos

bufsize

static int bufsize

column

protected static int column

inBuf

protected static int inBuf

inputStream

protected static java.io.Reader inputStream

line

protected static int line

maxNextCharInd

protected static int maxNextCharInd

nextCharBuf

protected static char[] nextCharBuf

nextCharInd

protected static int nextCharInd

prevCharIsCR

protected static boolean prevCharIsCR

prevCharIsLF

protected static boolean prevCharIsLF

staticFlag

public static final boolean staticFlag
See Also:
Constant Field Values

tabSize

protected static int tabSize

tokenBegin

static int tokenBegin
Constructor Detail

JavaCharStream

public JavaCharStream(java.io.InputStream dstream)

JavaCharStream

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

JavaCharStream

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

JavaCharStream

public JavaCharStream(java.io.InputStream dstream,
                      java.lang.String encoding)
               throws java.io.UnsupportedEncodingException
Throws:
java.io.UnsupportedEncodingException

JavaCharStream

public JavaCharStream(java.io.InputStream dstream,
                      java.lang.String encoding,
                      int startline,
                      int startcolumn)
               throws java.io.UnsupportedEncodingException
Throws:
java.io.UnsupportedEncodingException

JavaCharStream

public JavaCharStream(java.io.InputStream dstream,
                      java.lang.String encoding,
                      int startline,
                      int startcolumn,
                      int buffersize)
               throws java.io.UnsupportedEncodingException
Throws:
java.io.UnsupportedEncodingException

JavaCharStream

public JavaCharStream(java.io.Reader dstream)

JavaCharStream

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

JavaCharStream

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

adjustBeginLineColumn

public static void adjustBeginLineColumn(int newLine,
                                         int newCol)
Method to adjust line and column numbers for the start of a token.


AdjustBuffSize

protected static void AdjustBuffSize()

backup

public static void backup(int amount)

BeginToken

public static char BeginToken()
                       throws java.io.IOException
Throws:
java.io.IOException

Done

public static void Done()

ExpandBuff

protected static void ExpandBuff(boolean wrapAround)

FillBuff

protected static void FillBuff()
                        throws java.io.IOException
Throws:
java.io.IOException

getBeginColumn

public static int getBeginColumn()

getBeginLine

public static int getBeginLine()

getEndColumn

public static int getEndColumn()

getEndLine

public static int getEndLine()

GetImage

public static java.lang.String GetImage()

GetSuffix

public static char[] GetSuffix(int len)

getTabSize

protected static int getTabSize(int i)

hexval

static final int hexval(char c)
                 throws java.io.IOException
Throws:
java.io.IOException

ReadByte

protected static char ReadByte()
                        throws java.io.IOException
Throws:
java.io.IOException

readChar

public static char readChar()
                     throws java.io.IOException
Throws:
java.io.IOException

ReInit

public void ReInit(java.io.InputStream dstream)

ReInit

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

ReInit

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

ReInit

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

ReInit

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

ReInit

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

ReInit

public void ReInit(java.io.Reader dstream)

ReInit

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

ReInit

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

setTabSize

protected static void setTabSize(int i)

UpdateLineColumn

protected static void UpdateLineColumn(char c)