public class com.sun.tools.example.debug.expr.JavaCharStream
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.example.debug.expr.JavaCharStream
  super_class: java.lang.Object
{
  public static final boolean staticFlag;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public int bufpos;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

  int bufsize;
    descriptor: I
    flags: (0x0000) 

  int available;
    descriptor: I
    flags: (0x0000) 

  int tokenBegin;
    descriptor: I
    flags: (0x0000) 

  protected int[] bufline;
    descriptor: [I
    flags: (0x0004) ACC_PROTECTED

  protected int[] bufcolumn;
    descriptor: [I
    flags: (0x0004) ACC_PROTECTED

  protected int column;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int line;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected boolean prevCharIsCR;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  protected boolean prevCharIsLF;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  protected java.io.Reader inputStream;
    descriptor: Ljava/io/Reader;
    flags: (0x0004) ACC_PROTECTED

  protected char[] nextCharBuf;
    descriptor: [C
    flags: (0x0004) ACC_PROTECTED

  protected char[] buffer;
    descriptor: [C
    flags: (0x0004) ACC_PROTECTED

  protected int maxNextCharInd;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int nextCharInd;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int inBuf;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int tabSize;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  static final int hexval(char);
    descriptor: (C)I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 42
            iload 0 /* c */
            tableswitch { // 48 - 102
                   48: 1
                   49: 2
                   50: 3
                   51: 4
                   52: 5
                   53: 6
                   54: 7
                   55: 8
                   56: 9
                   57: 10
                   58: 17
                   59: 17
                   60: 17
                   61: 17
                   62: 17
                   63: 17
                   64: 17
                   65: 11
                   66: 12
                   67: 13
                   68: 14
                   69: 15
                   70: 16
                   71: 17
                   72: 17
                   73: 17
                   74: 17
                   75: 17
                   76: 17
                   77: 17
                   78: 17
                   79: 17
                   80: 17
                   81: 17
                   82: 17
                   83: 17
                   84: 17
                   85: 17
                   86: 17
                   87: 17
                   88: 17
                   89: 17
                   90: 17
                   91: 17
                   92: 17
                   93: 17
                   94: 17
                   95: 17
                   96: 17
                   97: 11
                   98: 12
                   99: 13
                  100: 14
                  101: 15
                  102: 16
              default: 17
          }
         1: .line 45
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 47
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         3: .line 49
      StackMap locals:
      StackMap stack:
            iconst_2
            ireturn
         4: .line 51
      StackMap locals:
      StackMap stack:
            iconst_3
            ireturn
         5: .line 53
      StackMap locals:
      StackMap stack:
            iconst_4
            ireturn
         6: .line 55
      StackMap locals:
      StackMap stack:
            iconst_5
            ireturn
         7: .line 57
      StackMap locals:
      StackMap stack:
            bipush 6
            ireturn
         8: .line 59
      StackMap locals:
      StackMap stack:
            bipush 7
            ireturn
         9: .line 61
      StackMap locals:
      StackMap stack:
            bipush 8
            ireturn
        10: .line 63
      StackMap locals:
      StackMap stack:
            bipush 9
            ireturn
        11: .line 67
      StackMap locals:
      StackMap stack:
            bipush 10
            ireturn
        12: .line 70
      StackMap locals:
      StackMap stack:
            bipush 11
            ireturn
        13: .line 73
      StackMap locals:
      StackMap stack:
            bipush 12
            ireturn
        14: .line 76
      StackMap locals:
      StackMap stack:
            bipush 13
            ireturn
        15: .line 79
      StackMap locals:
      StackMap stack:
            bipush 14
            ireturn
        16: .line 82
      StackMap locals:
      StackMap stack:
            bipush 15
            ireturn
        17: .line 85
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            invokespecial java.io.IOException.<init>:()V
            athrow
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0     c  C
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      c     

  protected void setTabSize(int);
    descriptor: (I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // int i
         0: .line 111
            aload 0 /* this */
            iload 1 /* i */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.tabSize:I
            return
        end local 1 // int i
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  protected int getTabSize(int);
    descriptor: (I)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // int i
         0: .line 112
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tabSize:I
            ireturn
        end local 1 // int i
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  protected void ExpandBuff(boolean);
    descriptor: (Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // boolean wrapAround
         0: .line 116
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            sipush 2048
            iadd
            newarray 5
            astore 2 /* newbuffer */
        start local 2 // char[] newbuffer
         1: .line 117
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            sipush 2048
            iadd
            newarray 10
            astore 3 /* newbufline */
        start local 3 // int[] newbufline
         2: .line 118
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            sipush 2048
            iadd
            newarray 10
            astore 4 /* newbufcolumn */
        start local 4 // int[] newbufcolumn
         3: .line 122
            iload 1 /* wrapAround */
            ifeq 15
         4: .line 124
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            aload 2 /* newbuffer */
            iconst_0
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         5: .line 125
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            iconst_0
            aload 2 /* newbuffer */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         6: .line 126
            aload 0 /* this */
            aload 2 /* newbuffer */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
         7: .line 128
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            aload 3 /* newbufline */
            iconst_0
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 129
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            iconst_0
            aload 3 /* newbufline */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         9: .line 130
            aload 0 /* this */
            aload 3 /* newbufline */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
        10: .line 132
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            aload 4 /* newbufcolumn */
            iconst_0
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        11: .line 133
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            iconst_0
            aload 4 /* newbufcolumn */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        12: .line 134
            aload 0 /* this */
            aload 4 /* newbufcolumn */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
        13: .line 136
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            iadd
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
        14: .line 137
            goto 25
        15: .line 140
      StackMap locals: char[] int[] int[]
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            aload 2 /* newbuffer */
            iconst_0
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        16: .line 141
            aload 0 /* this */
            aload 2 /* newbuffer */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
        17: .line 143
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            aload 3 /* newbufline */
            iconst_0
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        18: .line 144
            aload 0 /* this */
            aload 3 /* newbufline */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
        19: .line 146
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            aload 4 /* newbufcolumn */
            iconst_0
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        20: .line 147
            aload 0 /* this */
            aload 4 /* newbufcolumn */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
        21: .line 149
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
        22: .line 151
            goto 25
        23: .line 152
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5 /* t */
        start local 5 // java.lang.Throwable t
        24: .line 154
            new java.lang.Error
            dup
            aload 5 /* t */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.Throwable t
        25: .line 157
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            sipush 2048
            iadd
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            putfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
        26: .line 158
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
        27: .line 159
            return
        end local 4 // int[] newbufcolumn
        end local 3 // int[] newbufline
        end local 2 // char[] newbuffer
        end local 1 // boolean wrapAround
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   28     0          this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0   28     1    wrapAround  Z
            1   28     2     newbuffer  [C
            2   28     3    newbufline  [I
            3   28     4  newbufcolumn  [I
           24   25     5             t  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           3    22      23  Class java.lang.Throwable
    MethodParameters:
            Name  Flags
      wrapAround  

  protected void FillBuff();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 164
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.maxNextCharInd:I
            sipush 4096
            if_icmpne 2
         1: .line 165
            aload 0 /* this */
            aload 0 /* this */
            iconst_0
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharInd:I
            putfield com.sun.tools.example.debug.expr.JavaCharStream.maxNextCharInd:I
         2: .line 168
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.inputStream:Ljava/io/Reader;
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharBuf:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.maxNextCharInd:I
         3: .line 169
            sipush 4096
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.maxNextCharInd:I
            isub
         4: .line 168
            invokevirtual java.io.Reader.read:([CII)I
            dup
            istore 1 /* i */
        start local 1 // int i
         5: .line 169
            iconst_m1
         6: .line 168
            if_icmpne 9
         7: .line 171
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.inputStream:Ljava/io/Reader;
            invokevirtual java.io.Reader.close:()V
         8: .line 172
            new java.io.IOException
            dup
            invokespecial java.io.IOException.<init>:()V
            athrow
         9: .line 175
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.maxNextCharInd:I
            iload 1 /* i */
            iadd
            putfield com.sun.tools.example.debug.expr.JavaCharStream.maxNextCharInd:I
        10: .line 176
            return
        end local 1 // int i
        11: .line 178
      StackMap locals: com.sun.tools.example.debug.expr.JavaCharStream
      StackMap stack: java.io.IOException
            astore 2 /* e */
        start local 2 // java.io.IOException e
        12: .line 179
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            ifeq 16
        13: .line 181
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iconst_1
            isub
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
        14: .line 182
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.backup:(I)V
        15: .line 183
            goto 18
        16: .line 186
      StackMap locals: com.sun.tools.example.debug.expr.JavaCharStream top java.io.IOException
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
            iastore
        17: .line 187
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            iastore
        18: .line 189
      StackMap locals:
      StackMap stack:
            aload 2 /* e */
            athrow
        end local 2 // java.io.IOException e
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            5   11     1     i  I
           12   19     2     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           2    10      11  Class java.io.IOException
    Exceptions:
      throws java.io.IOException

  protected char ReadByte();
    descriptor: ()C
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 195
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharInd:I
            iconst_1
            iadd
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharInd:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.maxNextCharInd:I
            if_icmplt 2
         1: .line 196
            aload 0 /* this */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.FillBuff:()V
         2: .line 198
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharBuf:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharInd:I
            caload
            ireturn
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
    Exceptions:
      throws java.io.IOException

  public char BeginToken();
    descriptor: ()C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 204
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
            ifle 6
         1: .line 206
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
            iconst_1
            isub
            putfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
         2: .line 208
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iconst_1
            iadd
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            if_icmpne 4
         3: .line 209
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
         4: .line 211
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            putfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
         5: .line 212
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            caload
            ireturn
         6: .line 215
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
         7: .line 216
            aload 0 /* this */
            iconst_m1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
         8: .line 218
            aload 0 /* this */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.readChar:()C
            ireturn
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
    Exceptions:
      throws java.io.IOException

  protected void AdjustBuffSize();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 223
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            if_icmpne 7
         1: .line 225
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            sipush 2048
            if_icmple 5
         2: .line 227
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
         3: .line 228
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            putfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
         4: .line 229
            goto 12
         5: .line 231
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ExpandBuff:(Z)V
         6: .line 232
            goto 12
         7: .line 233
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            if_icmple 9
         8: .line 234
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            putfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
            goto 12
         9: .line 235
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
            isub
            sipush 2048
            if_icmpge 11
        10: .line 236
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ExpandBuff:(Z)V
            goto 12
        11: .line 238
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            putfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
        12: .line 239
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;

  protected void UpdateLineColumn(char);
    descriptor: (C)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // char c
         0: .line 243
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            iconst_1
            iadd
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
         1: .line 245
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsLF:Z
            ifeq 5
         2: .line 247
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsLF:Z
         3: .line 248
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
            aload 0 /* this */
            iconst_1
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            iadd
            putfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
         4: .line 249
            goto 11
         5: .line 250
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsCR:Z
            ifeq 11
         6: .line 252
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsCR:Z
         7: .line 253
            iload 1 /* c */
            bipush 10
            if_icmpne 10
         8: .line 255
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsLF:Z
         9: .line 256
            goto 11
        10: .line 258
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
            aload 0 /* this */
            iconst_1
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            iadd
            putfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
        11: .line 261
      StackMap locals:
      StackMap stack:
            iload 1 /* c */
            tableswitch { // 9 - 13
                    9: 16
                   10: 14
                   11: 19
                   12: 19
                   13: 12
              default: 19
          }
        12: .line 264
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsCR:Z
        13: .line 265
            goto 19
        14: .line 267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsLF:Z
        15: .line 268
            goto 19
        16: .line 270
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            iconst_1
            isub
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
        17: .line 271
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tabSize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tabSize:I
            irem
            isub
            iadd
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
        18: .line 272
            goto 19
        19: .line 277
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
            iastore
        20: .line 278
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            iastore
        21: .line 279
            return
        end local 1 // char c
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   22     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0   22     1     c  C
    MethodParameters:
      Name  Flags
      c     

  public char readChar();
    descriptor: ()C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 284
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
            ifle 5
         1: .line 286
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
            iconst_1
            isub
            putfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
         2: .line 288
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iconst_1
            iadd
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            if_icmpne 4
         3: .line 289
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
         4: .line 291
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            caload
            ireturn
         5: .line 296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iconst_1
            iadd
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
            if_icmpne 7
         6: .line 297
            aload 0 /* this */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.AdjustBuffSize:()V
         7: .line 299
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReadByte:()C
            dup
            istore 1 /* c */
        start local 1 // char c
         8: dup_x2
            castore
            bipush 92
            if_icmpne 45
         9: .line 301
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.UpdateLineColumn:(C)V
        10: .line 303
            iconst_1
            istore 2 /* backSlashCnt */
        start local 2 // int backSlashCnt
        11: .line 307
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iconst_1
            iadd
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
            if_icmpne 13
        12: .line 308
            aload 0 /* this */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.AdjustBuffSize:()V
        13: .line 312
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReadByte:()C
            dup
            istore 1 /* c */
            dup_x2
            castore
            bipush 92
            if_icmpeq 25
        14: .line 314
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.UpdateLineColumn:(C)V
        15: .line 316
            iload 1 /* c */
            bipush 117
            if_icmpne 19
            iload 2 /* backSlashCnt */
            iconst_1
            iand
            iconst_1
            if_icmpne 19
        16: .line 318
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iconst_1
            isub
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            ifge 29
        17: .line 319
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            iconst_1
            isub
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
        18: .line 321
            goto 29
        19: .line 324
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* backSlashCnt */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.backup:(I)V
        20: .line 325
            bipush 92
            ireturn
        21: .line 328
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
        22: .line 331
            iload 2 /* backSlashCnt */
            iconst_1
            if_icmple 24
        23: .line 332
            aload 0 /* this */
            iload 2 /* backSlashCnt */
            iconst_1
            isub
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.backup:(I)V
        24: .line 334
      StackMap locals:
      StackMap stack:
            bipush 92
            ireturn
        25: .line 337
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.UpdateLineColumn:(C)V
        26: .line 338
            iinc 2 /* backSlashCnt */ 1
        27: .line 305
            goto 11
        28: .line 345
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            iconst_1
            iadd
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
        29: .line 344
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReadByte:()C
            dup
            istore 1 /* c */
            bipush 117
            if_icmpeq 28
        30: .line 347
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iload 1 /* c */
            invokestatic com.sun.tools.example.debug.expr.JavaCharStream.hexval:(C)I
            bipush 12
            ishl
        31: .line 348
            aload 0 /* this */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReadByte:()C
            invokestatic com.sun.tools.example.debug.expr.JavaCharStream.hexval:(C)I
            bipush 8
            ishl
            ior
        32: .line 349
            aload 0 /* this */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReadByte:()C
            invokestatic com.sun.tools.example.debug.expr.JavaCharStream.hexval:(C)I
            iconst_4
            ishl
            ior
        33: .line 350
            aload 0 /* this */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReadByte:()C
            invokestatic com.sun.tools.example.debug.expr.JavaCharStream.hexval:(C)I
            ior
            i2c
            dup
            istore 1 /* c */
        34: .line 347
            castore
        35: .line 352
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            iconst_4
            iadd
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
        36: .line 353
            goto 41
        37: .line 354
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
        38: .line 356
            new java.lang.Error
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid escape character at line "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        39: .line 357
            ldc " column "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        40: .line 356
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        41: .line 360
      StackMap locals:
      StackMap stack:
            iload 2 /* backSlashCnt */
            iconst_1
            if_icmpne 43
        42: .line 361
            iload 1 /* c */
            ireturn
        43: .line 364
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* backSlashCnt */
            iconst_1
            isub
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.backup:(I)V
        44: .line 365
            bipush 92
            ireturn
        end local 2 // int backSlashCnt
        45: .line 370
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* c */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.UpdateLineColumn:(C)V
        46: .line 371
            iload 1 /* c */
            ireturn
        end local 1 // char c
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   47     0          this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            8   47     1             c  C
           11   45     2  backSlashCnt  I
      Exception table:
        from    to  target  type
          13    18      21  Class java.io.IOException
          19    20      21  Class java.io.IOException
          28    36      37  Class java.io.IOException
    Exceptions:
      throws java.io.IOException

  public int getColumn();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 381
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iaload
            ireturn
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public int getLine();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 390
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iaload
            ireturn
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public int getEndColumn();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 395
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iaload
            ireturn
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;

  public int getEndLine();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 400
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iaload
            ireturn
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;

  public int getBeginColumn();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 405
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            iaload
            ireturn
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;

  public int getBeginLine();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 410
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            iaload
            ireturn
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;

  public void backup(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // int amount
         0: .line 416
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
            iload 1 /* amount */
            iadd
            putfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
         1: .line 417
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iload 1 /* amount */
            isub
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            ifge 3
         2: .line 418
            aload 0 /* this */
            dup
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            iadd
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
         3: .line 419
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int amount
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    4     1  amount  I
    MethodParameters:
        Name  Flags
      amount  

  public void <init>(java.io.Reader, int, int, int);
    descriptor: (Ljava/io/Reader;III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.Reader dstream
        start local 2 // int startline
        start local 3 // int startcolumn
        start local 4 // int buffersize
         0: .line 422
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 89
            aload 0 /* this */
            iconst_m1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
         2: .line 96
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
         3: .line 97
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
         4: .line 99
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsCR:Z
         5: .line 100
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsLF:Z
         6: .line 106
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.maxNextCharInd:I
         7: .line 107
            aload 0 /* this */
            iconst_m1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharInd:I
         8: .line 108
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
         9: .line 109
            aload 0 /* this */
            bipush 8
            putfield com.sun.tools.example.debug.expr.JavaCharStream.tabSize:I
        10: .line 425
            aload 0 /* this */
            aload 1 /* dstream */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.inputStream:Ljava/io/Reader;
        11: .line 426
            aload 0 /* this */
            iload 2 /* startline */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
        12: .line 427
            aload 0 /* this */
            iload 3 /* startcolumn */
            iconst_1
            isub
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
        13: .line 429
            aload 0 /* this */
            aload 0 /* this */
            iload 4 /* buffersize */
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            putfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
        14: .line 430
            aload 0 /* this */
            iload 4 /* buffersize */
            newarray 5
            putfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
        15: .line 431
            aload 0 /* this */
            iload 4 /* buffersize */
            newarray 10
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
        16: .line 432
            aload 0 /* this */
            iload 4 /* buffersize */
            newarray 10
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
        17: .line 433
            aload 0 /* this */
            sipush 4096
            newarray 5
            putfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharBuf:[C
        18: .line 434
            return
        end local 4 // int buffersize
        end local 3 // int startcolumn
        end local 2 // int startline
        end local 1 // java.io.Reader dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0   19     1      dstream  Ljava/io/Reader;
            0   19     2    startline  I
            0   19     3  startcolumn  I
            0   19     4   buffersize  I
    MethodParameters:
             Name  Flags
      dstream      
      startline    
      startcolumn  
      buffersize   

  public void <init>(java.io.Reader, int, int);
    descriptor: (Ljava/io/Reader;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.Reader dstream
        start local 2 // int startline
        start local 3 // int startcolumn
         0: .line 440
            aload 0 /* this */
            aload 1 /* dstream */
            iload 2 /* startline */
            iload 3 /* startcolumn */
            sipush 4096
            invokespecial com.sun.tools.example.debug.expr.JavaCharStream.<init>:(Ljava/io/Reader;III)V
         1: .line 441
            return
        end local 3 // int startcolumn
        end local 2 // int startline
        end local 1 // java.io.Reader dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1      dstream  Ljava/io/Reader;
            0    2     2    startline  I
            0    2     3  startcolumn  I
    MethodParameters:
             Name  Flags
      dstream      
      startline    
      startcolumn  

  public void <init>(java.io.Reader);
    descriptor: (Ljava/io/Reader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.Reader dstream
         0: .line 446
            aload 0 /* this */
            aload 1 /* dstream */
            iconst_1
            iconst_1
            sipush 4096
            invokespecial com.sun.tools.example.debug.expr.JavaCharStream.<init>:(Ljava/io/Reader;III)V
         1: .line 447
            return
        end local 1 // java.io.Reader dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1  dstream  Ljava/io/Reader;
    MethodParameters:
         Name  Flags
      dstream  

  public void ReInit(java.io.Reader, int, int, int);
    descriptor: (Ljava/io/Reader;III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.Reader dstream
        start local 2 // int startline
        start local 3 // int startcolumn
        start local 4 // int buffersize
         0: .line 452
            aload 0 /* this */
            aload 1 /* dstream */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.inputStream:Ljava/io/Reader;
         1: .line 453
            aload 0 /* this */
            iload 2 /* startline */
            putfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
         2: .line 454
            aload 0 /* this */
            iload 3 /* startcolumn */
            iconst_1
            isub
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
         3: .line 456
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            ifnull 4
            iload 4 /* buffersize */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            arraylength
            if_icmpeq 9
         4: .line 458
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iload 4 /* buffersize */
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            putfield com.sun.tools.example.debug.expr.JavaCharStream.available:I
         5: .line 459
            aload 0 /* this */
            iload 4 /* buffersize */
            newarray 5
            putfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
         6: .line 460
            aload 0 /* this */
            iload 4 /* buffersize */
            newarray 10
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
         7: .line 461
            aload 0 /* this */
            iload 4 /* buffersize */
            newarray 10
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
         8: .line 462
            aload 0 /* this */
            sipush 4096
            newarray 5
            putfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharBuf:[C
         9: .line 464
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            iconst_0
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsCR:Z
            putfield com.sun.tools.example.debug.expr.JavaCharStream.prevCharIsLF:Z
        10: .line 465
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            iconst_0
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.maxNextCharInd:I
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
            putfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
        11: .line 466
            aload 0 /* this */
            aload 0 /* this */
            iconst_m1
            dup_x1
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            putfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharInd:I
        12: .line 467
            return
        end local 4 // int buffersize
        end local 3 // int startcolumn
        end local 2 // int startline
        end local 1 // java.io.Reader dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0   13     1      dstream  Ljava/io/Reader;
            0   13     2    startline  I
            0   13     3  startcolumn  I
            0   13     4   buffersize  I
    MethodParameters:
             Name  Flags
      dstream      
      startline    
      startcolumn  
      buffersize   

  public void ReInit(java.io.Reader, int, int);
    descriptor: (Ljava/io/Reader;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.Reader dstream
        start local 2 // int startline
        start local 3 // int startcolumn
         0: .line 473
            aload 0 /* this */
            aload 1 /* dstream */
            iload 2 /* startline */
            iload 3 /* startcolumn */
            sipush 4096
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReInit:(Ljava/io/Reader;III)V
         1: .line 474
            return
        end local 3 // int startcolumn
        end local 2 // int startline
        end local 1 // java.io.Reader dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1      dstream  Ljava/io/Reader;
            0    2     2    startline  I
            0    2     3  startcolumn  I
    MethodParameters:
             Name  Flags
      dstream      
      startline    
      startcolumn  

  public void ReInit(java.io.Reader);
    descriptor: (Ljava/io/Reader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.Reader dstream
         0: .line 479
            aload 0 /* this */
            aload 1 /* dstream */
            iconst_1
            iconst_1
            sipush 4096
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReInit:(Ljava/io/Reader;III)V
         1: .line 480
            return
        end local 1 // java.io.Reader dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1  dstream  Ljava/io/Reader;
    MethodParameters:
         Name  Flags
      dstream  

  public void <init>(java.io.InputStream, java.lang.String, int, int, int);
    descriptor: (Ljava/io/InputStream;Ljava/lang/String;III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
        start local 2 // java.lang.String encoding
        start local 3 // int startline
        start local 4 // int startcolumn
        start local 5 // int buffersize
         0: .line 485
            aload 0 /* this */
            aload 2 /* encoding */
            ifnonnull 1
            new java.io.InputStreamReader
            dup
            aload 1 /* dstream */
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
            goto 2
      StackMap locals:
      StackMap stack: uninitialized-this
         1: new java.io.InputStreamReader
            dup
            aload 1 /* dstream */
            aload 2 /* encoding */
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/lang/String;)V
      StackMap locals: uninitialized-this java.io.InputStream java.lang.String int int int
      StackMap stack: uninitialized-this java.io.InputStreamReader
         2: iload 3 /* startline */
            iload 4 /* startcolumn */
            iload 5 /* buffersize */
            invokespecial com.sun.tools.example.debug.expr.JavaCharStream.<init>:(Ljava/io/Reader;III)V
         3: .line 486
            return
        end local 5 // int buffersize
        end local 4 // int startcolumn
        end local 3 // int startline
        end local 2 // java.lang.String encoding
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    4     1      dstream  Ljava/io/InputStream;
            0    4     2     encoding  Ljava/lang/String;
            0    4     3    startline  I
            0    4     4  startcolumn  I
            0    4     5   buffersize  I
    Exceptions:
      throws java.io.UnsupportedEncodingException
    MethodParameters:
             Name  Flags
      dstream      
      encoding     
      startline    
      startcolumn  
      buffersize   

  public void <init>(java.io.InputStream, int, int, int);
    descriptor: (Ljava/io/InputStream;III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
        start local 2 // int startline
        start local 3 // int startcolumn
        start local 4 // int buffersize
         0: .line 492
            aload 0 /* this */
            new java.io.InputStreamReader
            dup
            aload 1 /* dstream */
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
            iload 2 /* startline */
            iload 3 /* startcolumn */
            sipush 4096
            invokespecial com.sun.tools.example.debug.expr.JavaCharStream.<init>:(Ljava/io/Reader;III)V
         1: .line 493
            return
        end local 4 // int buffersize
        end local 3 // int startcolumn
        end local 2 // int startline
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1      dstream  Ljava/io/InputStream;
            0    2     2    startline  I
            0    2     3  startcolumn  I
            0    2     4   buffersize  I
    MethodParameters:
             Name  Flags
      dstream      
      startline    
      startcolumn  
      buffersize   

  public void <init>(java.io.InputStream, java.lang.String, int, int);
    descriptor: (Ljava/io/InputStream;Ljava/lang/String;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
        start local 2 // java.lang.String encoding
        start local 3 // int startline
        start local 4 // int startcolumn
         0: .line 499
            aload 0 /* this */
            aload 1 /* dstream */
            aload 2 /* encoding */
            iload 3 /* startline */
            iload 4 /* startcolumn */
            sipush 4096
            invokespecial com.sun.tools.example.debug.expr.JavaCharStream.<init>:(Ljava/io/InputStream;Ljava/lang/String;III)V
         1: .line 500
            return
        end local 4 // int startcolumn
        end local 3 // int startline
        end local 2 // java.lang.String encoding
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1      dstream  Ljava/io/InputStream;
            0    2     2     encoding  Ljava/lang/String;
            0    2     3    startline  I
            0    2     4  startcolumn  I
    Exceptions:
      throws java.io.UnsupportedEncodingException
    MethodParameters:
             Name  Flags
      dstream      
      encoding     
      startline    
      startcolumn  

  public void <init>(java.io.InputStream, int, int);
    descriptor: (Ljava/io/InputStream;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
        start local 2 // int startline
        start local 3 // int startcolumn
         0: .line 506
            aload 0 /* this */
            aload 1 /* dstream */
            iload 2 /* startline */
            iload 3 /* startcolumn */
            sipush 4096
            invokespecial com.sun.tools.example.debug.expr.JavaCharStream.<init>:(Ljava/io/InputStream;III)V
         1: .line 507
            return
        end local 3 // int startcolumn
        end local 2 // int startline
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1      dstream  Ljava/io/InputStream;
            0    2     2    startline  I
            0    2     3  startcolumn  I
    MethodParameters:
             Name  Flags
      dstream      
      startline    
      startcolumn  

  public void <init>(java.io.InputStream, java.lang.String);
    descriptor: (Ljava/io/InputStream;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
        start local 2 // java.lang.String encoding
         0: .line 512
            aload 0 /* this */
            aload 1 /* dstream */
            aload 2 /* encoding */
            iconst_1
            iconst_1
            sipush 4096
            invokespecial com.sun.tools.example.debug.expr.JavaCharStream.<init>:(Ljava/io/InputStream;Ljava/lang/String;III)V
         1: .line 513
            return
        end local 2 // java.lang.String encoding
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1   dstream  Ljava/io/InputStream;
            0    2     2  encoding  Ljava/lang/String;
    Exceptions:
      throws java.io.UnsupportedEncodingException
    MethodParameters:
          Name  Flags
      dstream   
      encoding  

  public void <init>(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
         0: .line 518
            aload 0 /* this */
            aload 1 /* dstream */
            iconst_1
            iconst_1
            sipush 4096
            invokespecial com.sun.tools.example.debug.expr.JavaCharStream.<init>:(Ljava/io/InputStream;III)V
         1: .line 519
            return
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1  dstream  Ljava/io/InputStream;
    MethodParameters:
         Name  Flags
      dstream  

  public void ReInit(java.io.InputStream, java.lang.String, int, int, int);
    descriptor: (Ljava/io/InputStream;Ljava/lang/String;III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
        start local 2 // java.lang.String encoding
        start local 3 // int startline
        start local 4 // int startcolumn
        start local 5 // int buffersize
         0: .line 525
            aload 0 /* this */
            aload 2 /* encoding */
            ifnonnull 1
            new java.io.InputStreamReader
            dup
            aload 1 /* dstream */
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
            goto 2
      StackMap locals:
      StackMap stack: com.sun.tools.example.debug.expr.JavaCharStream
         1: new java.io.InputStreamReader
            dup
            aload 1 /* dstream */
            aload 2 /* encoding */
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/lang/String;)V
      StackMap locals: com.sun.tools.example.debug.expr.JavaCharStream java.io.InputStream java.lang.String int int int
      StackMap stack: com.sun.tools.example.debug.expr.JavaCharStream java.io.InputStreamReader
         2: iload 3 /* startline */
            iload 4 /* startcolumn */
            iload 5 /* buffersize */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReInit:(Ljava/io/Reader;III)V
         3: .line 526
            return
        end local 5 // int buffersize
        end local 4 // int startcolumn
        end local 3 // int startline
        end local 2 // java.lang.String encoding
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    4     1      dstream  Ljava/io/InputStream;
            0    4     2     encoding  Ljava/lang/String;
            0    4     3    startline  I
            0    4     4  startcolumn  I
            0    4     5   buffersize  I
    Exceptions:
      throws java.io.UnsupportedEncodingException
    MethodParameters:
             Name  Flags
      dstream      
      encoding     
      startline    
      startcolumn  
      buffersize   

  public void ReInit(java.io.InputStream, int, int, int);
    descriptor: (Ljava/io/InputStream;III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
        start local 2 // int startline
        start local 3 // int startcolumn
        start local 4 // int buffersize
         0: .line 532
            aload 0 /* this */
            new java.io.InputStreamReader
            dup
            aload 1 /* dstream */
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
            iload 2 /* startline */
            iload 3 /* startcolumn */
            iload 4 /* buffersize */
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReInit:(Ljava/io/Reader;III)V
         1: .line 533
            return
        end local 4 // int buffersize
        end local 3 // int startcolumn
        end local 2 // int startline
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1      dstream  Ljava/io/InputStream;
            0    2     2    startline  I
            0    2     3  startcolumn  I
            0    2     4   buffersize  I
    MethodParameters:
             Name  Flags
      dstream      
      startline    
      startcolumn  
      buffersize   

  public void ReInit(java.io.InputStream, java.lang.String, int, int);
    descriptor: (Ljava/io/InputStream;Ljava/lang/String;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
        start local 2 // java.lang.String encoding
        start local 3 // int startline
        start local 4 // int startcolumn
         0: .line 538
            aload 0 /* this */
            aload 1 /* dstream */
            aload 2 /* encoding */
            iload 3 /* startline */
            iload 4 /* startcolumn */
            sipush 4096
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReInit:(Ljava/io/InputStream;Ljava/lang/String;III)V
         1: .line 539
            return
        end local 4 // int startcolumn
        end local 3 // int startline
        end local 2 // java.lang.String encoding
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1      dstream  Ljava/io/InputStream;
            0    2     2     encoding  Ljava/lang/String;
            0    2     3    startline  I
            0    2     4  startcolumn  I
    Exceptions:
      throws java.io.UnsupportedEncodingException
    MethodParameters:
             Name  Flags
      dstream      
      encoding     
      startline    
      startcolumn  

  public void ReInit(java.io.InputStream, int, int);
    descriptor: (Ljava/io/InputStream;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
        start local 2 // int startline
        start local 3 // int startcolumn
         0: .line 544
            aload 0 /* this */
            aload 1 /* dstream */
            iload 2 /* startline */
            iload 3 /* startcolumn */
            sipush 4096
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReInit:(Ljava/io/InputStream;III)V
         1: .line 545
            return
        end local 3 // int startcolumn
        end local 2 // int startline
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1      dstream  Ljava/io/InputStream;
            0    2     2    startline  I
            0    2     3  startcolumn  I
    MethodParameters:
             Name  Flags
      dstream      
      startline    
      startcolumn  

  public void ReInit(java.io.InputStream, java.lang.String);
    descriptor: (Ljava/io/InputStream;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
        start local 2 // java.lang.String encoding
         0: .line 549
            aload 0 /* this */
            aload 1 /* dstream */
            aload 2 /* encoding */
            iconst_1
            iconst_1
            sipush 4096
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReInit:(Ljava/io/InputStream;Ljava/lang/String;III)V
         1: .line 550
            return
        end local 2 // java.lang.String encoding
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1   dstream  Ljava/io/InputStream;
            0    2     2  encoding  Ljava/lang/String;
    Exceptions:
      throws java.io.UnsupportedEncodingException
    MethodParameters:
          Name  Flags
      dstream   
      encoding  

  public void ReInit(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // java.io.InputStream dstream
         0: .line 555
            aload 0 /* this */
            aload 1 /* dstream */
            iconst_1
            iconst_1
            sipush 4096
            invokevirtual com.sun.tools.example.debug.expr.JavaCharStream.ReInit:(Ljava/io/InputStream;III)V
         1: .line 556
            return
        end local 1 // java.io.InputStream dstream
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    2     1  dstream  Ljava/io/InputStream;
    MethodParameters:
         Name  Flags
      dstream  

  public java.lang.String GetImage();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 561
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            if_icmplt 2
         1: .line 562
            new java.lang.String
            dup
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            iconst_1
            iadd
            invokespecial java.lang.String.<init>:([CII)V
            areturn
         2: .line 564
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            new java.lang.String
            dup
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            invokespecial java.lang.String.<init>:([CII)V
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         3: .line 565
            new java.lang.String
            dup
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            iconst_0
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iconst_1
            iadd
            invokespecial java.lang.String.<init>:([CII)V
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 564
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;

  public char[] GetSuffix(int);
    descriptor: (I)[C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // int len
         0: .line 571
            iload 1 /* len */
            newarray 5
            astore 2 /* ret */
        start local 2 // char[] ret
         1: .line 573
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iconst_1
            iadd
            iload 1 /* len */
            if_icmplt 3
         2: .line 574
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iload 1 /* len */
            isub
            iconst_1
            iadd
            aload 2 /* ret */
            iconst_0
            iload 1 /* len */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
            goto 7
         3: .line 577
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            iload 1 /* len */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            isub
            iconst_1
            isub
            isub
            aload 2 /* ret */
            iconst_0
         4: .line 578
            iload 1 /* len */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            isub
            iconst_1
            isub
         5: .line 577
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         6: .line 579
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
            iconst_0
            aload 2 /* ret */
            iload 1 /* len */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            isub
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iconst_1
            iadd
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         7: .line 582
      StackMap locals:
      StackMap stack:
            aload 2 /* ret */
            areturn
        end local 2 // char[] ret
        end local 1 // int len
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0    8     1   len  I
            1    8     2   ret  [C
    MethodParameters:
      Name  Flags
      len   

  public void Done();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
         0: .line 588
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.example.debug.expr.JavaCharStream.nextCharBuf:[C
         1: .line 589
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.example.debug.expr.JavaCharStream.buffer:[C
         2: .line 590
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
         3: .line 591
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
         4: .line 592
            return
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/example/debug/expr/JavaCharStream;

  public void adjustBeginLineColumn(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=10, args_size=3
        start local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
        start local 1 // int newLine
        start local 2 // int newCol
         0: .line 599
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            istore 3 /* start */
        start local 3 // int start
         1: .line 602
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            if_icmplt 4
         2: .line 604
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
            iadd
            iconst_1
            iadd
            istore 4 /* len */
        start local 4 // int len
         3: .line 605
            goto 5
        end local 4 // int len
         4: .line 608
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.tokenBegin:I
            isub
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufpos:I
            iadd
            iconst_1
            iadd
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.inBuf:I
            iadd
            istore 4 /* len */
        start local 4 // int len
         5: .line 611
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: iconst_0
            istore 6 /* j */
        start local 6 // int j
         7: iconst_0
            istore 7 /* k */
        start local 7 // int k
         8: .line 612
            iconst_0
            istore 8 /* nextColDiff */
        start local 8 // int nextColDiff
         9: iconst_0
            istore 9 /* columnDiff */
        start local 9 // int columnDiff
        10: .line 614
            goto 16
        11: .line 616
      StackMap locals: com.sun.tools.example.debug.expr.JavaCharStream int int int int int int int int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            iload 6 /* j */
            iload 1 /* newLine */
            iastore
        12: .line 617
            iload 9 /* columnDiff */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            iload 7 /* k */
            iaload
            iadd
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            iload 6 /* j */
            iaload
            isub
            istore 8 /* nextColDiff */
        13: .line 618
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            iload 6 /* j */
            iload 2 /* newCol */
            iload 9 /* columnDiff */
            iadd
            iastore
        14: .line 619
            iload 8 /* nextColDiff */
            istore 9 /* columnDiff */
        15: .line 620
            iinc 5 /* i */ 1
        16: .line 614
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            iload 4 /* len */
            if_icmpge 17
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            iload 3 /* start */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            irem
            dup
            istore 6 /* j */
            iaload
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            iinc 3 /* start */ 1
            iload 3 /* start */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            irem
            dup
            istore 7 /* k */
            iaload
            if_icmpeq 11
        17: .line 623
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            iload 4 /* len */
            if_icmpge 25
        18: .line 625
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            iload 6 /* j */
            iload 1 /* newLine */
            iinc 1 /* newLine */ 1
            iastore
        19: .line 626
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            iload 6 /* j */
            iload 2 /* newCol */
            iload 9 /* columnDiff */
            iadd
            iastore
        20: .line 628
            goto 24
        21: .line 630
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            iload 3 /* start */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            irem
            dup
            istore 6 /* j */
            iaload
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            iinc 3 /* start */ 1
            iload 3 /* start */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufsize:I
            irem
            iaload
            if_icmpeq 23
        22: .line 631
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            iload 6 /* j */
            iload 1 /* newLine */
            iinc 1 /* newLine */ 1
            iastore
            goto 24
        23: .line 633
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            iload 6 /* j */
            iload 1 /* newLine */
            iastore
        24: .line 628
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            iinc 5 /* i */ 1
            iload 4 /* len */
            if_icmplt 21
        25: .line 637
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufline:[I
            iload 6 /* j */
            iaload
            putfield com.sun.tools.example.debug.expr.JavaCharStream.line:I
        26: .line 638
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.example.debug.expr.JavaCharStream.bufcolumn:[I
            iload 6 /* j */
            iaload
            putfield com.sun.tools.example.debug.expr.JavaCharStream.column:I
        27: .line 639
            return
        end local 9 // int columnDiff
        end local 8 // int nextColDiff
        end local 7 // int k
        end local 6 // int j
        end local 5 // int i
        end local 4 // int len
        end local 3 // int start
        end local 2 // int newCol
        end local 1 // int newLine
        end local 0 // com.sun.tools.example.debug.expr.JavaCharStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   28     0         this  Lcom/sun/tools/example/debug/expr/JavaCharStream;
            0   28     1      newLine  I
            0   28     2       newCol  I
            1   28     3        start  I
            3    4     4          len  I
            5   28     4          len  I
            6   28     5            i  I
            7   28     6            j  I
            8   28     7            k  I
            9   28     8  nextColDiff  I
           10   28     9   columnDiff  I
    MethodParameters:
         Name  Flags
      newLine  
      newCol   
}
SourceFile: "JavaCharStream.java"