Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /* Generated By:JavaCC: Do not edit this line. SimpleCharStream.java Version 5.0 */
  /* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */
  package org.apache.el.parser;

An implementation of interface CharStream, where the stream is assumed to contain only ASCII characters (without unicode processing).
  
  @SuppressWarnings("all"// Ignore warnings in generated code
 public class SimpleCharStream
 {
Whether parser is static.
 
   public static final boolean staticFlag = false;
   int bufsize;
   int available;
   int tokenBegin;
Position in buffer.
 
   public int bufpos = -1;
   protected int bufline[];
   protected int bufcolumn[];
 
   protected int column = 0;
   protected int line = 1;
 
   protected boolean prevCharIsCR = false;
   protected boolean prevCharIsLF = false;
 
   protected java.io.Reader inputStream;
 
   protected char[] buffer;
   protected int maxNextCharInd = 0;
   protected int inBuf = 0;
   protected int tabSize = 8;
 
   protected void setTabSize(int i) {  = i; }
   protected int getTabSize(int i) { return ; }
 
 
   protected void ExpandBuff(boolean wrapAround)
   {
     char[] newbuffer = new char[ + 2048];
     int newbufline[] = new int[ + 2048];
     int newbufcolumn[] = new int[ + 2048];
 
     try
     {
       if (wrapAround)
       {
         System.arraycopy(newbuffer, 0,  - );
         System.arraycopy(, 0, newbuffer - );
          = newbuffer;
 
         System.arraycopy(newbufline, 0,  - );
         System.arraycopy(, 0, newbufline - );
          = newbufline;
 
         System.arraycopy(newbufcolumn, 0,  - );
         System.arraycopy(, 0, newbufcolumn - );
          = newbufcolumn;
 
          = ( += ( - ));
       }
       else
       {
         System.arraycopy(newbuffer, 0,  - );
          = newbuffer;
 
         System.arraycopy(newbufline, 0,  - );
          = newbufline;
 
         System.arraycopy(newbufcolumn, 0,  - );
          = newbufcolumn;
 
          = ( -= );
       }
     }
     catch (Throwable t)
     {
       throw new Error(t.getMessage());
     }
 
 
      += 2048;
      = ;
      = 0;
   }
 
   protected void FillBuff() throws java.io.IOException
   {
     if ( == )
     {
       if ( == )
       {
         if ( > 2048)
         {
            =  = 0;
            = ;
         }
         else if ( < 0)
           =  = 0;
        else
          ExpandBuff(false);
      }
      else if ( > )
         = ;
      else if (( - ) < 2048)
        ExpandBuff(true);
      else
         = ;
    }
    int i;
    try {
      if ((i = .read( - )) == -1)
      {
        .close();
        throw new java.io.IOException();
      }
      else
         += i;
      return;
    }
    catch(java.io.IOException e) {
      --;
      backup(0);
      if ( == -1)
         = ;
      throw e;
    }
  }

Start.
  public char BeginToken() throws java.io.IOException
  {
     = -1;
    char c = readChar();
     = ;
    return c;
  }
  protected void UpdateLineColumn(char c)
  {
    ++;
    if ()
    {
       = false;
       += ( = 1);
    }
    else if ()
    {
       = false;
      if (c == '\n')
      {
         = true;
      }
      else
         += ( = 1);
    }
    switch (c)
    {
      case '\r' :
         = true;
        break;
      case '\n' :
         = true;
        break;
      case '\t' :
        --;
         += ( - ( % ));
        break;
      default :
        break;
    }
    [] = ;
    [] = ;
  }

Read a character.
  public char readChar() throws java.io.IOException
  {
    if ( > 0)
    {
      --;
      if (++ == )
         = 0;
      return [];
    }
    if (++ >= )
      FillBuff();
    char c = [];
    return c;
  }
  @Deprecated
  

Deprecated:
See also:
getEndColumn
  public int getColumn() {
    return [];
  }
  @Deprecated
  

Deprecated:
See also:
getEndLine
  public int getLine() {
    return [];
  }

  
Get token end column number.
  public int getEndColumn() {
    return [];
  }

  
Get token end line number.
  public int getEndLine() {
     return [];
  }

  
Get token beginning column number.
  public int getBeginColumn() {
    return [];
  }

  
Get token beginning line number.
  public int getBeginLine() {
    return [];
  }

Backup a number of characters.
  public void backup(int amount) {
     += amount;
    if (( -= amount) < 0)
       += ;
  }

  
Constructor.
  public SimpleCharStream(java.io.Reader dstreamint startline,
  int startcolumnint buffersize)
  {
     = dstream;
     = startline;
     = startcolumn - 1;
     =  = buffersize;
     = new char[buffersize];
     = new int[buffersize];
     = new int[buffersize];
  }

  
Constructor.
  public SimpleCharStream(java.io.Reader dstreamint startline,
                          int startcolumn)
  {
    this(dstreamstartlinestartcolumn, 4096);
  }

  
Constructor.
  public SimpleCharStream(java.io.Reader dstream)
  {
    this(dstream, 1, 1, 4096);
  }

  
Reinitialise.
  public void ReInit(java.io.Reader dstreamint startline,
  int startcolumnint buffersize)
  {
     = dstream;
     = startline;
     = startcolumn - 1;
    if ( == null || buffersize != .)
    {
       =  = buffersize;
       = new char[buffersize];
       = new int[buffersize];
       = new int[buffersize];
    }
     =  = false;
     =  =  = 0;
     = -1;
  }

  
Reinitialise.
  public void ReInit(java.io.Reader dstreamint startline,
                     int startcolumn)
  {
    ReInit(dstreamstartlinestartcolumn, 4096);
  }

  
Reinitialise.
  public void ReInit(java.io.Reader dstream)
  {
    ReInit(dstream, 1, 1, 4096);
  }
  
Constructor.
  public SimpleCharStream(java.io.InputStream dstreamString encodingint startline,
  int startcolumnint buffersizethrows java.io.UnsupportedEncodingException
  {
    this(encoding == null ? new java.io.InputStreamReader(dstream) : new java.io.InputStreamReader(dstreamencoding), startlinestartcolumnbuffersize);
  }

  
Constructor.
  public SimpleCharStream(java.io.InputStream dstreamint startline,
  int startcolumnint buffersize)
  {
    this(new java.io.InputStreamReader(dstream), startlinestartcolumnbuffersize);
  }

  
Constructor.
  public SimpleCharStream(java.io.InputStream dstreamString encodingint startline,
                          int startcolumnthrows java.io.UnsupportedEncodingException
  {
    this(dstreamencodingstartlinestartcolumn, 4096);
  }

  
Constructor.
  public SimpleCharStream(java.io.InputStream dstreamint startline,
                          int startcolumn)
  {
    this(dstreamstartlinestartcolumn, 4096);
  }

  
Constructor.
  {
    this(dstreamencoding, 1, 1, 4096);
  }

  
Constructor.
  public SimpleCharStream(java.io.InputStream dstream)
  {
    this(dstream, 1, 1, 4096);
  }

  
Reinitialise.
  public void ReInit(java.io.InputStream dstreamString encodingint startline,
                          int startcolumnint buffersizethrows java.io.UnsupportedEncodingException
  {
    ReInit(encoding == null ? new java.io.InputStreamReader(dstream) : new java.io.InputStreamReader(dstreamencoding), startlinestartcolumnbuffersize);
  }

  
Reinitialise.
  public void ReInit(java.io.InputStream dstreamint startline,
                          int startcolumnint buffersize)
  {
    ReInit(new java.io.InputStreamReader(dstream), startlinestartcolumnbuffersize);
  }

  
Reinitialise.
  public void ReInit(java.io.InputStream dstreamString encodingthrows java.io.UnsupportedEncodingException
  {
    ReInit(dstreamencoding, 1, 1, 4096);
  }

  
Reinitialise.
  public void ReInit(java.io.InputStream dstream)
  {
    ReInit(dstream, 1, 1, 4096);
  }
  
Reinitialise.
  public void ReInit(java.io.InputStream dstreamString encodingint startline,
                     int startcolumnthrows java.io.UnsupportedEncodingException
  {
    ReInit(dstreamencodingstartlinestartcolumn, 4096);
  }
  
Reinitialise.
  public void ReInit(java.io.InputStream dstreamint startline,
                     int startcolumn)
  {
    ReInit(dstreamstartlinestartcolumn, 4096);
  }
  
Get token literal value.
  public String GetImage()
  {
    if ( >= )
      return new String( -  + 1);
    else
      return new String( - ) +
                            new String(, 0,  + 1);
  }

  
Get the suffix.
  public char[] GetSuffix(int len)
  {
    char[] ret = new char[len];
    if (( + 1) >= len)
      System.arraycopy( - len + 1, ret, 0, len);
    else
    {
      System.arraycopy( - (len -  - 1), ret, 0,
                                                        len -  - 1);
      System.arraycopy(, 0, retlen -  - 1,  + 1);
    }
    return ret;
  }

  
Reset buffer when finished.
  public void Done()
  {
     = null;
     = null;
     = null;
  }

  
Method to adjust line and column numbers for the start of a token.
  public void adjustBeginLineColumn(int newLineint newCol)
  {
    int start = ;
    int len;
    if ( >= )
    {
      len =  -  +  + 1;
    }
    else
    {
      len =  -  +  + 1 + ;
    }
    int i = 0, j = 0, k = 0;
    int nextColDiff = 0, columnDiff = 0;
    while (i < len && [j = start % ] == [k = ++start % ])
    {
      [j] = newLine;
      nextColDiff = columnDiff + [k] - [j];
      [j] = newCol + columnDiff;
      columnDiff = nextColDiff;
      i++;
    }
    if (i < len)
    {
      [j] = newLine++;
      [j] = newCol + columnDiff;
      while (i++ < len)
      {
        if ([j = start % ] != [++start % ])
          [j] = newLine++;
        else
          [j] = newLine;
      }
    }
     = [j];
     = [j];
  }
/* JavaCC - OriginalChecksum=9ba0db3918bffb8019f00da1e421f339 (do not edit this line) */
New to GrepCode? Check out our FAQ X