abstract class com.ctc.wstx.io.BaseReader extends java.io.Reader
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: com.ctc.wstx.io.BaseReader
  super_class: java.io.Reader
{
  protected static final char NULL_CHAR;
    descriptor: C
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  protected static final char NULL_BYTE;
    descriptor: C
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  protected static final char CONVERT_NEL_TO;
    descriptor: C
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  protected static final char CONVERT_LSEP_TO;
    descriptor: C
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  static final char CHAR_DEL;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 127

  protected final com.ctc.wstx.api.ReaderConfig mConfig;
    descriptor: Lcom/ctc/wstx/api/ReaderConfig;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private java.io.InputStream mIn;
    descriptor: Ljava/io/InputStream;
    flags: (0x0002) ACC_PRIVATE

  protected byte[] mByteBuffer;
    descriptor: [B
    flags: (0x0004) ACC_PROTECTED

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

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

  private final boolean mRecycleBuffer;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  protected void <init>(com.ctc.wstx.api.ReaderConfig, java.io.InputStream, byte[], int, int, boolean);
    descriptor: (Lcom/ctc/wstx/api/ReaderConfig;Ljava/io/InputStream;[BIIZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=7, args_size=7
        start local 0 // com.ctc.wstx.io.BaseReader this
        start local 1 // com.ctc.wstx.api.ReaderConfig cfg
        start local 2 // java.io.InputStream in
        start local 3 // byte[] buf
        start local 4 // int ptr
        start local 5 // int len
        start local 6 // boolean recycleBuffer
         0: .line 64
            aload 0 /* this */
            invokespecial java.io.Reader.<init>:()V
         1: .line 118
            aload 0 /* this */
            aconst_null
            putfield com.ctc.wstx.io.BaseReader.mTmpBuf:[C
         2: .line 67
            aload 0 /* this */
            aload 1 /* cfg */
            putfield com.ctc.wstx.io.BaseReader.mConfig:Lcom/ctc/wstx/api/ReaderConfig;
         3: .line 68
            aload 0 /* this */
            aload 2 /* in */
            putfield com.ctc.wstx.io.BaseReader.mIn:Ljava/io/InputStream;
         4: .line 69
            aload 0 /* this */
            aload 3 /* buf */
            putfield com.ctc.wstx.io.BaseReader.mByteBuffer:[B
         5: .line 70
            aload 0 /* this */
            iload 4 /* ptr */
            putfield com.ctc.wstx.io.BaseReader.mBytePtr:I
         6: .line 71
            aload 0 /* this */
            iload 5 /* len */
            putfield com.ctc.wstx.io.BaseReader.mByteBufferEnd:I
         7: .line 72
            aload 0 /* this */
            iload 6 /* recycleBuffer */
            putfield com.ctc.wstx.io.BaseReader.mRecycleBuffer:Z
         8: .line 73
            return
        end local 6 // boolean recycleBuffer
        end local 5 // int len
        end local 4 // int ptr
        end local 3 // byte[] buf
        end local 2 // java.io.InputStream in
        end local 1 // com.ctc.wstx.api.ReaderConfig cfg
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0           this  Lcom/ctc/wstx/io/BaseReader;
            0    9     1            cfg  Lcom/ctc/wstx/api/ReaderConfig;
            0    9     2             in  Ljava/io/InputStream;
            0    9     3            buf  [B
            0    9     4            ptr  I
            0    9     5            len  I
            0    9     6  recycleBuffer  Z
    MethodParameters:
               Name  Flags
      cfg            
      in             
      buf            
      ptr            
      len            
      recycleBuffer  

  public abstract void setXmlCompliancy(int);
    descriptor: (I)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
            Name  Flags
      xmlVersion  

  protected final boolean canModifyBuffer();
    descriptor: ()Z
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.ctc.wstx.io.BaseReader this
         0: .line 97
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mRecycleBuffer:Z
            ireturn
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/ctc/wstx/io/BaseReader;

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.ctc.wstx.io.BaseReader this
         0: .line 109
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mIn:Ljava/io/InputStream;
            astore 1 /* in */
        start local 1 // java.io.InputStream in
         1: .line 111
            aload 1 /* in */
            ifnull 5
         2: .line 112
            aload 0 /* this */
            aconst_null
            putfield com.ctc.wstx.io.BaseReader.mIn:Ljava/io/InputStream;
         3: .line 113
            aload 0 /* this */
            invokevirtual com.ctc.wstx.io.BaseReader.freeBuffers:()V
         4: .line 114
            aload 1 /* in */
            invokevirtual java.io.InputStream.close:()V
         5: .line 116
      StackMap locals: java.io.InputStream
      StackMap stack:
            return
        end local 1 // java.io.InputStream in
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/ctc/wstx/io/BaseReader;
            1    6     1    in  Ljava/io/InputStream;
    Exceptions:
      throws java.io.IOException

  public int read();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.ctc.wstx.io.BaseReader this
         0: .line 128
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mTmpBuf:[C
            ifnonnull 2
         1: .line 129
            aload 0 /* this */
            iconst_1
            newarray 5
            putfield com.ctc.wstx.io.BaseReader.mTmpBuf:[C
         2: .line 131
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mTmpBuf:[C
            iconst_0
            iconst_1
            invokevirtual com.ctc.wstx.io.BaseReader.read:([CII)I
            iconst_1
            if_icmpge 4
         3: .line 132
            iconst_m1
            ireturn
         4: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mTmpBuf:[C
            iconst_0
            caload
            ireturn
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/ctc/wstx/io/BaseReader;
    Exceptions:
      throws java.io.IOException

  protected final java.io.InputStream getStream();
    descriptor: ()Ljava/io/InputStream;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.ctc.wstx.io.BaseReader this
         0: .line 143
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mIn:Ljava/io/InputStream;
            areturn
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/ctc/wstx/io/BaseReader;

  protected final int readBytes();
    descriptor: ()I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.ctc.wstx.io.BaseReader this
         0: .line 152
            aload 0 /* this */
            iconst_0
            putfield com.ctc.wstx.io.BaseReader.mBytePtr:I
         1: .line 153
            aload 0 /* this */
            iconst_0
            putfield com.ctc.wstx.io.BaseReader.mByteBufferEnd:I
         2: .line 154
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mIn:Ljava/io/InputStream;
            ifnull 7
         3: .line 155
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mIn:Ljava/io/InputStream;
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mByteBuffer:[B
            iconst_0
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mByteBuffer:[B
            arraylength
            invokevirtual java.io.InputStream.read:([BII)I
            istore 1 /* count */
        start local 1 // int count
         4: .line 156
            iload 1 /* count */
            ifle 6
         5: .line 157
            aload 0 /* this */
            iload 1 /* count */
            putfield com.ctc.wstx.io.BaseReader.mByteBufferEnd:I
         6: .line 159
      StackMap locals: int
      StackMap stack:
            iload 1 /* count */
            ireturn
        end local 1 // int count
         7: .line 161
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lcom/ctc/wstx/io/BaseReader;
            4    7     1  count  I
    Exceptions:
      throws java.io.IOException

  protected final int readBytesAt(int);
    descriptor: (I)I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.ctc.wstx.io.BaseReader this
        start local 1 // int offset
         0: .line 175
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mIn:Ljava/io/InputStream;
            ifnull 5
         1: .line 176
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mIn:Ljava/io/InputStream;
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mByteBuffer:[B
            iload 1 /* offset */
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mByteBuffer:[B
            arraylength
            iload 1 /* offset */
            isub
            invokevirtual java.io.InputStream.read:([BII)I
            istore 2 /* count */
        start local 2 // int count
         2: .line 177
            iload 2 /* count */
            ifle 4
         3: .line 178
            aload 0 /* this */
            dup
            getfield com.ctc.wstx.io.BaseReader.mByteBufferEnd:I
            iload 2 /* count */
            iadd
            putfield com.ctc.wstx.io.BaseReader.mByteBufferEnd:I
         4: .line 180
      StackMap locals: int
      StackMap stack:
            iload 2 /* count */
            ireturn
        end local 2 // int count
         5: .line 182
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 1 // int offset
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/ctc/wstx/io/BaseReader;
            0    6     1  offset  I
            2    5     2   count  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      offset  

  public final void freeBuffers();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.ctc.wstx.io.BaseReader this
         0: .line 196
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mRecycleBuffer:Z
            ifeq 6
         1: .line 197
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mByteBuffer:[B
            astore 1 /* buf */
        start local 1 // byte[] buf
         2: .line 198
            aload 1 /* buf */
            ifnull 6
         3: .line 199
            aload 0 /* this */
            aconst_null
            putfield com.ctc.wstx.io.BaseReader.mByteBuffer:[B
         4: .line 200
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mConfig:Lcom/ctc/wstx/api/ReaderConfig;
            ifnull 6
         5: .line 201
            aload 0 /* this */
            getfield com.ctc.wstx.io.BaseReader.mConfig:Lcom/ctc/wstx/api/ReaderConfig;
            aload 1 /* buf */
            invokevirtual com.ctc.wstx.api.ReaderConfig.freeFullBBuffer:([B)V
        end local 1 // byte[] buf
         6: .line 205
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/ctc/wstx/io/BaseReader;
            2    6     1   buf  [B

  protected void reportBounds(char[], int, int);
    descriptor: ([CII)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.ctc.wstx.io.BaseReader this
        start local 1 // char[] cbuf
        start local 2 // int start
        start local 3 // int len
         0: .line 210
            new java.lang.ArrayIndexOutOfBoundsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "read(buf,"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* start */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* len */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "), cbuf["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* cbuf */
            arraylength
            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;
            invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // int len
        end local 2 // int start
        end local 1 // char[] cbuf
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/ctc/wstx/io/BaseReader;
            0    1     1   cbuf  [C
            0    1     2  start  I
            0    1     3    len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      cbuf   
      start  
      len    

  protected void reportStrangeStream();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.ctc.wstx.io.BaseReader this
         0: .line 216
            new java.io.IOException
            dup
            ldc "Strange I/O stream, returned 0 bytes on read"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/ctc/wstx/io/BaseReader;
    Exceptions:
      throws java.io.IOException

  protected void reportInvalidXml11(int, int, int);
    descriptor: (III)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.ctc.wstx.io.BaseReader this
        start local 1 // int value
        start local 2 // int bytePos
        start local 3 // int charPos
         0: .line 222
            new java.io.CharConversionException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid character 0x"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 223
            iload 1 /* value */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 224
            ldc ", can only be included in xml 1.1 using character entities (at char #"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* charPos */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", byte #"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* bytePos */
            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;
         3: .line 222
            invokespecial java.io.CharConversionException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // int charPos
        end local 2 // int bytePos
        end local 1 // int value
        end local 0 // com.ctc.wstx.io.BaseReader this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lcom/ctc/wstx/io/BaseReader;
            0    4     1    value  I
            0    4     2  bytePos  I
            0    4     3  charPos  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      value    
      bytePos  
      charPos  
}
SourceFile: "BaseReader.java"