public final class com.fasterxml.aalto.in.Utf32Reader extends java.io.Reader
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.fasterxml.aalto.in.Utf32Reader
super_class: java.io.Reader
{
static final char NULL_CHAR;
descriptor: C
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
final com.fasterxml.aalto.in.ReaderConfig mConfig;
descriptor: Lcom/fasterxml/aalto/in/ReaderConfig;
flags: (0x0010) ACC_FINAL
protected java.io.InputStream mIn;
descriptor: Ljava/io/InputStream;
flags: (0x0004) ACC_PROTECTED
protected byte[] mBuffer;
descriptor: [B
flags: (0x0004) ACC_PROTECTED
protected int mPtr;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected int mLength;
descriptor: I
flags: (0x0004) ACC_PROTECTED
final boolean mBigEndian;
descriptor: Z
flags: (0x0010) ACC_FINAL
char mSurrogate;
descriptor: C
flags: (0x0000)
int mCharCount;
descriptor: I
flags: (0x0000)
int mByteCount;
descriptor: I
flags: (0x0000)
char[] mTmpBuf;
descriptor: [C
flags: (0x0000)
public void <init>(com.fasterxml.aalto.in.ReaderConfig, java.io.InputStream, byte[], int, int, boolean);
descriptor: (Lcom/fasterxml/aalto/in/ReaderConfig;Ljava/io/InputStream;[BIIZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokespecial java.io.Reader.<init>:()V
1: aload 0
iconst_0
putfield com.fasterxml.aalto.in.Utf32Reader.mSurrogate:C
2: aload 0
iconst_0
putfield com.fasterxml.aalto.in.Utf32Reader.mCharCount:I
3: aload 0
iconst_0
putfield com.fasterxml.aalto.in.Utf32Reader.mByteCount:I
4: aload 0
aconst_null
putfield com.fasterxml.aalto.in.Utf32Reader.mTmpBuf:[C
5: aload 0
aload 1
putfield com.fasterxml.aalto.in.Utf32Reader.mConfig:Lcom/fasterxml/aalto/in/ReaderConfig;
6: aload 0
iload 6
putfield com.fasterxml.aalto.in.Utf32Reader.mBigEndian:Z
7: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/fasterxml/aalto/in/Utf32Reader;
0 8 1 cfg Lcom/fasterxml/aalto/in/ReaderConfig;
0 8 2 in Ljava/io/InputStream;
0 8 3 buf [B
0 8 4 ptr I
0 8 5 len I
0 8 6 isBigEndian Z
MethodParameters:
Name Flags
cfg
in
buf
ptr
len
isBigEndian
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mIn:Ljava/io/InputStream;
astore 1
start local 1 1: aload 1
ifnull 5
2: aload 0
aconst_null
putfield com.fasterxml.aalto.in.Utf32Reader.mIn:Ljava/io/InputStream;
3: aload 0
invokevirtual com.fasterxml.aalto.in.Utf32Reader.freeBuffers:()V
4: aload 1
invokevirtual java.io.InputStream.close:()V
5: StackMap locals: java.io.InputStream
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/fasterxml/aalto/in/Utf32Reader;
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 0: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mTmpBuf:[C
ifnonnull 2
1: aload 0
iconst_1
newarray 5
putfield com.fasterxml.aalto.in.Utf32Reader.mTmpBuf:[C
2: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mTmpBuf:[C
iconst_0
iconst_1
invokevirtual com.fasterxml.aalto.in.Utf32Reader.read:([CII)I
iconst_1
if_icmpge 4
3: iconst_m1
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mTmpBuf:[C
iconst_0
caload
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/fasterxml/aalto/in/Utf32Reader;
Exceptions:
throws java.io.IOException
public int read(char[], int, int);
descriptor: ([CII)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
ifnonnull 2
1: iconst_m1
ireturn
2: StackMap locals:
StackMap stack:
iload 3
iconst_1
if_icmpge 4
3: iload 3
ireturn
4: StackMap locals:
StackMap stack:
iload 2
iflt 5
iload 2
iload 3
iadd
aload 1
arraylength
if_icmple 6
5: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
iload 3
invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportBounds:([CII)V
6: StackMap locals:
StackMap stack:
iload 3
iload 2
iadd
istore 3
7: iload 2
istore 4
start local 4 8: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mSurrogate:C
ifeq 12
9: aload 1
iload 4
iinc 4 1
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mSurrogate:C
castore
10: aload 0
iconst_0
putfield com.fasterxml.aalto.in.Utf32Reader.mSurrogate:C
11: goto 16
12: StackMap locals: int
StackMap stack:
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
isub
istore 5
start local 5 13: iload 5
iconst_4
if_icmpge 16
14: aload 0
iload 5
invokevirtual com.fasterxml.aalto.in.Utf32Reader.loadMore:(I)Z
ifne 16
15: iconst_m1
ireturn
end local 5 16: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
astore 5
start local 5 17: goto 52
18: StackMap locals: byte[]
StackMap stack:
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
istore 6
start local 6 19: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mBigEndian:Z
ifeq 26
20: aload 5
iload 6
baload
bipush 24
ishl
aload 5
iload 6
iconst_1
iadd
baload
sipush 255
iand
bipush 16
ishl
ior
21: aload 5
iload 6
iconst_2
iadd
baload
sipush 255
iand
bipush 8
ishl
22: ior
23: aload 5
iload 6
iconst_3
iadd
baload
sipush 255
iand
24: ior
istore 7
start local 7 25: goto 31
end local 7 26: StackMap locals: int
StackMap stack:
aload 5
iload 6
baload
sipush 255
iand
aload 5
iload 6
iconst_1
iadd
baload
sipush 255
iand
bipush 8
ishl
ior
27: aload 5
iload 6
iconst_2
iadd
baload
sipush 255
iand
bipush 16
ishl
28: ior
29: aload 5
iload 6
iconst_3
iadd
baload
bipush 24
ishl
30: ior
istore 7
start local 7 31: StackMap locals: int
StackMap stack:
aload 0
dup
getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
iconst_4
iadd
putfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
32: iload 7
ldc 55296
if_icmplt 49
33: iload 7
ldc 1114111
if_icmple 37
34: aload 0
iload 7
iload 4
iload 2
isub
35: new java.lang.StringBuilder
dup
ldc "(above "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc 1114111
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ") "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
36: invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportInvalid:(IILjava/lang/String;)V
37: StackMap locals:
StackMap stack:
iload 7
ldc 65535
if_icmple 44
38: iload 7
ldc 65536
isub
istore 7
39: aload 1
iload 4
iinc 4 1
ldc 55296
iload 7
bipush 10
ishr
iadd
i2c
castore
40: ldc 56320
iload 7
sipush 1023
iand
ior
istore 7
41: iload 4
iload 3
if_icmplt 49
42: aload 0
iload 7
i2c
putfield com.fasterxml.aalto.in.Utf32Reader.mSurrogate:C
43: goto 53
44: StackMap locals:
StackMap stack:
iload 7
ldc 57344
if_icmpge 47
45: aload 0
iload 7
iload 4
iload 2
isub
ldc "(a surrogate char) "
invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportInvalid:(IILjava/lang/String;)V
46: goto 49
StackMap locals:
StackMap stack:
47: iload 7
ldc 65534
if_icmplt 49
48: aload 0
iload 7
iload 4
iload 2
isub
ldc ""
invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportInvalid:(IILjava/lang/String;)V
49: StackMap locals:
StackMap stack:
aload 1
iload 4
iinc 4 1
iload 7
i2c
castore
50: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
if_icmplt 52
51: goto 53
end local 7 end local 6 52: StackMap locals:
StackMap stack:
iload 4
iload 3
if_icmplt 18
53: StackMap locals:
StackMap stack:
iload 4
iload 2
isub
istore 3
54: aload 0
dup
getfield com.fasterxml.aalto.in.Utf32Reader.mCharCount:I
iload 3
iadd
putfield com.fasterxml.aalto.in.Utf32Reader.mCharCount:I
55: iload 3
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 56 0 this Lcom/fasterxml/aalto/in/Utf32Reader;
0 56 1 cbuf [C
0 56 2 start I
0 56 3 len I
8 56 4 outPtr I
13 16 5 left I
17 56 5 buf [B
19 52 6 ptr I
25 26 7 ch I
31 52 7 ch I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
cbuf
start
len
private boolean loadMore(int);
descriptor: (I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
dup
getfield com.fasterxml.aalto.in.Utf32Reader.mByteCount:I
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
iload 1
isub
iadd
putfield com.fasterxml.aalto.in.Utf32Reader.mByteCount:I
1: iload 1
ifle 11
2: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
ifle 9
3: iconst_0
istore 2
start local 2 4: goto 7
5: StackMap locals: int
StackMap stack:
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
iload 2
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
iload 2
iadd
baload
bastore
6: iinc 2 1
StackMap locals:
StackMap stack:
7: iload 2
iload 1
if_icmplt 5
end local 2 8: aload 0
iconst_0
putfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
9: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
10: goto 28
11: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
12: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mIn:Ljava/io/InputStream;
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
invokevirtual java.io.InputStream.read:([B)I
istore 2
start local 2 13: iload 2
iconst_1
if_icmpge 19
14: aload 0
iconst_0
putfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
15: iload 2
ifge 18
16: aload 0
invokevirtual com.fasterxml.aalto.in.Utf32Reader.freeBuffers:()V
17: iconst_0
ireturn
18: StackMap locals: int
StackMap stack:
aload 0
invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportStrangeStream:()V
19: StackMap locals:
StackMap stack:
aload 0
iload 2
putfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
end local 2 20: goto 28
21: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mIn:Ljava/io/InputStream;
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
arraylength
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
isub
invokevirtual java.io.InputStream.read:([BII)I
istore 2
start local 2 22: iload 2
iconst_1
if_icmpge 27
23: iload 2
ifge 26
24: aload 0
invokevirtual com.fasterxml.aalto.in.Utf32Reader.freeBuffers:()V
25: aload 0
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
iconst_4
invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportUnexpectedEOF:(II)V
26: StackMap locals: int
StackMap stack:
aload 0
invokevirtual com.fasterxml.aalto.in.Utf32Reader.reportStrangeStream:()V
27: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
iload 2
iadd
putfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
end local 2 28: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mLength:I
iconst_4
if_icmplt 21
29: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lcom/fasterxml/aalto/in/Utf32Reader;
0 30 1 available I
4 8 2 i I
13 20 2 count I
22 28 2 count I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
available
public final void freeBuffers();
descriptor: ()V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
astore 1
start local 1 1: aload 1
ifnull 5
2: aload 0
aconst_null
putfield com.fasterxml.aalto.in.Utf32Reader.mBuffer:[B
3: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mConfig:Lcom/fasterxml/aalto/in/ReaderConfig;
ifnull 5
4: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mConfig:Lcom/fasterxml/aalto/in/ReaderConfig;
aload 1
invokevirtual com.fasterxml.aalto.in.ReaderConfig.freeFullBBuffer:([B)V
5: StackMap locals: byte[]
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/fasterxml/aalto/in/Utf32Reader;
1 6 1 buf [B
private void reportUnexpectedEOF(int, int);
descriptor: (II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mByteCount:I
iload 1
iadd
istore 3
start local 3 1: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mCharCount:I
istore 4
start local 4 2: new java.io.CharConversionException
dup
new java.lang.StringBuilder
dup
ldc "Unexpected EOF in the middle of a 4-byte UTF-32 char: got "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", needed "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
4: ldc ", at char #"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", byte #"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
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;
5: invokespecial java.io.CharConversionException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/fasterxml/aalto/in/Utf32Reader;
0 6 1 gotBytes I
0 6 2 needed I
1 6 3 bytePos I
2 6 4 charPos I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
gotBytes
needed
private void reportInvalid(int, int, java.lang.String);
descriptor: (IILjava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mByteCount:I
aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mPtr:I
iadd
iconst_1
isub
istore 4
start local 4 1: aload 0
getfield com.fasterxml.aalto.in.Utf32Reader.mCharCount:I
iload 2
iadd
istore 5
start local 5 2: new java.io.CharConversionException
dup
new java.lang.StringBuilder
dup
ldc "Invalid UTF-32 character 0x"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: iload 1
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " at char #"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", byte #"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 4
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;
5: invokespecial java.io.CharConversionException.<init>:(Ljava/lang/String;)V
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/fasterxml/aalto/in/Utf32Reader;
0 6 1 value I
0 6 2 offset I
0 6 3 msg Ljava/lang/String;
1 6 4 bytePos I
2 6 5 charPos I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
value
offset
msg
protected void reportBounds(char[], int, int);
descriptor: ([CII)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.lang.ArrayIndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "read(buf,"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "), cbuf["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
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 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/aalto/in/Utf32Reader;
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 0: 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 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/aalto/in/Utf32Reader;
Exceptions:
throws java.io.IOException
}
SourceFile: "Utf32Reader.java"