class sun.nio.cs.ext.ISO2022_CN$Decoder extends java.nio.charset.CharsetDecoder
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.nio.cs.ext.ISO2022_CN$Decoder
super_class: java.nio.charset.CharsetDecoder
{
private boolean shiftOut;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private byte currentSODesig;
descriptor: B
flags: (0x0002) ACC_PRIVATE
private static final java.nio.charset.Charset gb2312;
descriptor: Ljava/nio/charset/Charset;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.nio.charset.Charset cns;
descriptor: Ljava/nio/charset/Charset;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final sun.nio.cs.ext.DoubleByte$Decoder gb2312Decoder;
descriptor: Lsun/nio/cs/ext/DoubleByte$Decoder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final sun.nio.cs.ext.EUC_TW$Decoder cnsDecoder;
descriptor: Lsun/nio/cs/ext/EUC_TW$Decoder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc Lsun/nio/cs/ext/ISO2022_CN;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic sun.nio.cs.ext.ISO2022_CN$Decoder.$assertionsDisabled:Z
3: new sun.nio.cs.ext.EUC_CN
dup
invokespecial sun.nio.cs.ext.EUC_CN.<init>:()V
putstatic sun.nio.cs.ext.ISO2022_CN$Decoder.gb2312:Ljava/nio/charset/Charset;
4: new sun.nio.cs.ext.EUC_TW
dup
invokespecial sun.nio.cs.ext.EUC_TW.<init>:()V
putstatic sun.nio.cs.ext.ISO2022_CN$Decoder.cns:Ljava/nio/charset/Charset;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.nio.charset.Charset);
descriptor: (Ljava/nio/charset/Charset;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
fconst_1
fconst_1
invokespecial java.nio.charset.CharsetDecoder.<init>:(Ljava/nio/charset/Charset;FF)V
1: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.shiftOut:Z
2: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
3: aload 0
getstatic sun.nio.cs.ext.ISO2022_CN$Decoder.gb2312:Ljava/nio/charset/Charset;
invokevirtual java.nio.charset.Charset.newDecoder:()Ljava/nio/charset/CharsetDecoder;
checkcast sun.nio.cs.ext.DoubleByte$Decoder
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.gb2312Decoder:Lsun/nio/cs/ext/DoubleByte$Decoder;
4: aload 0
getstatic sun.nio.cs.ext.ISO2022_CN$Decoder.cns:Ljava/nio/charset/Charset;
invokevirtual java.nio.charset.Charset.newDecoder:()Ljava/nio/charset/CharsetDecoder;
checkcast sun.nio.cs.ext.EUC_TW$Decoder
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.cnsDecoder:Lsun/nio/cs/ext/EUC_TW$Decoder;
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/nio/cs/ext/ISO2022_CN$Decoder;
0 6 1 cs Ljava/nio/charset/Charset;
MethodParameters:
Name Flags
cs
protected void implReset();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.shiftOut:Z
1: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/nio/cs/ext/ISO2022_CN$Decoder;
private char cnsDecode(byte, byte, byte);
descriptor: (BBB)C
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 1
bipush -128
ior
i2b
istore 1
1: iload 2
bipush -128
ior
i2b
istore 2
2: iconst_0
istore 4
start local 4 3: iload 3
bipush 78
if_icmpne 5
4: iconst_1
istore 4
goto 8
5: StackMap locals: int
StackMap stack:
iload 3
bipush 79
if_icmpne 7
6: iconst_2
istore 4
goto 8
7: StackMap locals:
StackMap stack:
ldc 65533
ireturn
8: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ext.ISO2022_CN$Decoder.cnsDecoder:Lsun/nio/cs/ext/EUC_TW$Decoder;
iload 1
sipush 255
iand
9: iload 2
sipush 255
iand
10: iload 4
11: invokevirtual sun.nio.cs.ext.EUC_TW$Decoder.toUnicode:(III)[C
astore 5
start local 5 12: aload 5
ifnull 13
aload 5
arraylength
iconst_2
if_icmpne 14
13: StackMap locals: char[]
StackMap stack:
ldc 65533
ireturn
14: StackMap locals:
StackMap stack:
aload 5
iconst_0
caload
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 15 0 this Lsun/nio/cs/ext/ISO2022_CN$Decoder;
0 15 1 byte1 B
0 15 2 byte2 B
0 15 3 SS B
3 15 4 p I
12 15 5 ret [C
MethodParameters:
Name Flags
byte1
byte2
SS
private char SODecode(byte, byte, byte);
descriptor: (BBB)C
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 1
bipush -128
ior
i2b
istore 1
1: iload 2
bipush -128
ior
i2b
istore 2
2: iload 3
ifne 6
3: aload 0
getfield sun.nio.cs.ext.ISO2022_CN$Decoder.gb2312Decoder:Lsun/nio/cs/ext/DoubleByte$Decoder;
iload 1
sipush 255
iand
4: iload 2
sipush 255
iand
5: invokevirtual sun.nio.cs.ext.DoubleByte$Decoder.decodeDouble:(II)C
ireturn
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ext.ISO2022_CN$Decoder.cnsDecoder:Lsun/nio/cs/ext/EUC_TW$Decoder;
iload 1
sipush 255
iand
7: iload 2
sipush 255
iand
8: iconst_0
9: invokevirtual sun.nio.cs.ext.EUC_TW$Decoder.toUnicode:(III)[C
astore 4
start local 4 10: aload 4
ifnonnull 12
11: ldc 65533
ireturn
12: StackMap locals: char[]
StackMap stack:
aload 4
iconst_0
caload
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/nio/cs/ext/ISO2022_CN$Decoder;
0 13 1 byte1 B
0 13 2 byte2 B
0 13 3 SOD B
10 13 4 ret [C
MethodParameters:
Name Flags
byte1
byte2
SOD
private java.nio.charset.CoderResult decodeBufferLoop(java.nio.ByteBuffer, java.nio.CharBuffer);
descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.nio.ByteBuffer.position:()I
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: iconst_0
istore 5
start local 5 3: iconst_0
istore 6
start local 6 4: iconst_0
istore 7
start local 7 5: iconst_0
istore 8
start local 8 6: ldc 65533
istore 9
start local 9 7: goto 136
8: StackMap locals: sun.nio.cs.ext.ISO2022_CN$Decoder java.nio.ByteBuffer java.nio.CharBuffer int int int int int int int
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 4
9: iconst_1
istore 8
10: goto 112
11: StackMap locals:
StackMap stack:
iload 4
bipush 27
if_icmpne 100
12: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
13: aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_1
if_icmpge 17
14: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 11
15: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
16: aload 11
areturn
17: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 5
18: iinc 8 1
19: iload 5
bipush -128
iand
ifeq 23
20: iload 8
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 11
21: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
22: aload 11
areturn
23: StackMap locals:
StackMap stack:
iload 5
bipush 36
if_icmpne 78
24: aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_1
if_icmpge 28
25: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 11
26: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
27: aload 11
areturn
28: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 6
29: iinc 8 1
30: iload 6
bipush -128
iand
ifeq 34
31: iload 8
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 11
32: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
33: aload 11
areturn
34: StackMap locals:
StackMap stack:
iload 6
bipush 65
if_icmpne 37
35: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
36: goto 105
StackMap locals:
StackMap stack:
37: iload 6
bipush 41
if_icmpne 53
38: aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_1
if_icmpge 42
39: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 11
40: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
41: aload 11
areturn
42: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 7
43: iinc 8 1
44: iload 7
bipush 65
if_icmpne 47
45: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
46: goto 105
StackMap locals:
StackMap stack:
47: iload 7
bipush 71
if_icmpne 50
48: aload 0
iconst_1
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
49: goto 105
50: StackMap locals:
StackMap stack:
iload 8
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 11
51: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
52: aload 11
areturn
53: StackMap locals:
StackMap stack:
iload 6
bipush 42
if_icmpne 64
54: aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_1
if_icmpge 58
55: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 11
56: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
57: aload 11
areturn
58: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 7
59: iinc 8 1
60: iload 7
bipush 72
if_icmpeq 105
61: iload 8
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 11
62: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
63: aload 11
areturn
64: StackMap locals:
StackMap stack:
iload 6
bipush 43
if_icmpne 75
65: aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_1
if_icmpge 69
66: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 11
67: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
68: aload 11
areturn
69: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 7
70: iinc 8 1
71: iload 7
bipush 73
if_icmpeq 105
72: iload 8
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 11
73: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
74: aload 11
areturn
75: StackMap locals:
StackMap stack:
iload 8
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 11
76: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
77: aload 11
areturn
78: StackMap locals:
StackMap stack:
iload 5
bipush 78
if_icmpeq 79
iload 5
bipush 79
if_icmpne 97
79: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_2
if_icmpge 83
80: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 11
81: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
82: aload 11
areturn
83: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 6
84: aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 7
85: iinc 8 2
86: aload 2
invokevirtual java.nio.CharBuffer.remaining:()I
iconst_1
if_icmpge 90
87: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 11
88: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
89: aload 11
areturn
90: StackMap locals:
StackMap stack:
aload 0
iload 6
iload 7
iload 5
invokevirtual sun.nio.cs.ext.ISO2022_CN$Decoder.cnsDecode:(BBB)C
istore 9
91: iload 9
ldc 65533
if_icmpne 95
92: iload 8
invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
astore 11
93: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
94: aload 11
areturn
95: StackMap locals:
StackMap stack:
aload 2
iload 9
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
96: goto 105
97: StackMap locals:
StackMap stack:
iload 8
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 11
98: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
99: aload 11
areturn
100: StackMap locals:
StackMap stack:
iload 4
bipush 14
if_icmpne 103
101: aload 0
iconst_1
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.shiftOut:Z
102: goto 105
StackMap locals:
StackMap stack:
103: iload 4
bipush 15
if_icmpne 105
104: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.shiftOut:Z
105: StackMap locals:
StackMap stack:
iload 3
iload 8
iadd
istore 3
106: aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_1
if_icmpge 110
107: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 11
108: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
109: aload 11
areturn
110: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 4
111: iconst_1
istore 8
112: StackMap locals:
StackMap stack:
iload 4
bipush 27
if_icmpeq 11
113: iload 4
bipush 14
if_icmpeq 11
114: iload 4
bipush 15
if_icmpeq 11
115: aload 2
invokevirtual java.nio.CharBuffer.remaining:()I
iconst_1
if_icmpge 119
116: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 11
117: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
118: aload 11
areturn
119: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ext.ISO2022_CN$Decoder.shiftOut:Z
ifne 123
120: aload 2
iload 4
sipush 255
iand
i2c
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
121: iload 3
iload 8
iadd
istore 3
122: goto 136
123: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_1
if_icmpge 127
124: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 11
125: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
126: aload 11
areturn
127: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 5
128: iinc 8 1
129: aload 0
iload 4
iload 5
aload 0
getfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
invokevirtual sun.nio.cs.ext.ISO2022_CN$Decoder.SODecode:(BBB)C
istore 9
130: iload 9
ldc 65533
if_icmpne 134
131: iload 8
invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
astore 11
132: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
133: aload 11
areturn
134: StackMap locals:
StackMap stack:
aload 2
iload 9
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
135: iload 3
iload 8
iadd
istore 3
136: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 8
137: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 11
138: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
139: aload 11
areturn
140: StackMap locals:
StackMap stack: java.lang.Throwable
astore 10
141: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
142: aload 10
athrow
end local 9 end local 8 end local 7 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 143 0 this Lsun/nio/cs/ext/ISO2022_CN$Decoder;
0 143 1 src Ljava/nio/ByteBuffer;
0 143 2 dst Ljava/nio/CharBuffer;
1 143 3 mark I
2 143 4 b1 B
3 143 5 b2 B
4 143 6 b3 B
5 143 7 b4 B
6 143 8 inputSize I
7 143 9 c C
Exception table:
from to target type
7 15 140 any
17 21 140 any
23 26 140 any
28 32 140 any
34 40 140 any
42 51 140 any
53 56 140 any
58 62 140 any
64 67 140 any
69 73 140 any
75 76 140 any
78 81 140 any
83 88 140 any
90 93 140 any
95 98 140 any
100 108 140 any
110 117 140 any
119 125 140 any
127 132 140 any
134 138 140 any
MethodParameters:
Name Flags
src
dst
private java.nio.charset.CoderResult decodeArrayLoop(java.nio.ByteBuffer, java.nio.CharBuffer);
descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=17, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: iconst_0
istore 5
start local 5 3: iconst_0
istore 6
start local 6 4: iconst_0
istore 7
start local 7 5: ldc 65533
istore 8
start local 8 6: aload 1
invokevirtual java.nio.ByteBuffer.array:()[B
astore 9
start local 9 7: aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 1
invokevirtual java.nio.ByteBuffer.position:()I
iadd
istore 10
start local 10 8: aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 1
invokevirtual java.nio.ByteBuffer.limit:()I
iadd
istore 11
start local 11 9: getstatic sun.nio.cs.ext.ISO2022_CN$Decoder.$assertionsDisabled:Z
ifne 10
iload 10
iload 11
if_icmple 10
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
10: StackMap locals: sun.nio.cs.ext.ISO2022_CN$Decoder java.nio.ByteBuffer java.nio.CharBuffer int int int int int int byte[] int int
StackMap stack:
iload 10
iload 11
if_icmpgt 11
iload 10
goto 12
StackMap locals:
StackMap stack:
11: iload 11
StackMap locals:
StackMap stack: int
12: istore 10
13: aload 2
invokevirtual java.nio.CharBuffer.array:()[C
astore 12
start local 12 14: aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
aload 2
invokevirtual java.nio.CharBuffer.position:()I
iadd
istore 13
start local 13 15: aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
aload 2
invokevirtual java.nio.CharBuffer.limit:()I
iadd
istore 14
start local 14 16: getstatic sun.nio.cs.ext.ISO2022_CN$Decoder.$assertionsDisabled:Z
ifne 17
iload 13
iload 14
if_icmple 17
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
17: StackMap locals: char[] int int
StackMap stack:
iload 13
iload 14
if_icmpgt 18
iload 13
goto 19
StackMap locals:
StackMap stack:
18: iload 14
StackMap locals:
StackMap stack: int
19: istore 13
20: goto 165
21: StackMap locals:
StackMap stack:
aload 9
iload 10
baload
istore 4
22: iconst_1
istore 3
23: goto 141
24: StackMap locals:
StackMap stack:
iload 4
bipush 27
if_icmpne 128
25: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
26: iload 10
iconst_2
iadd
iload 11
if_icmple 31
27: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 16
28: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
29: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
30: aload 16
areturn
31: StackMap locals:
StackMap stack:
aload 9
iload 10
iconst_1
iadd
baload
istore 5
32: iinc 3 1
33: iload 5
bipush -128
iand
ifeq 38
34: iload 3
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 16
35: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
36: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
37: aload 16
areturn
38: StackMap locals:
StackMap stack:
iload 5
bipush 36
if_icmpne 102
39: iload 10
iconst_3
iadd
iload 11
if_icmple 44
40: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 16
41: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
42: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
43: aload 16
areturn
44: StackMap locals:
StackMap stack:
aload 9
iload 10
iconst_2
iadd
baload
istore 6
45: iinc 3 1
46: iload 6
bipush -128
iand
ifeq 51
47: iload 3
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 16
48: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
49: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
50: aload 16
areturn
51: StackMap locals:
StackMap stack:
iload 6
bipush 65
if_icmpne 54
52: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
53: goto 133
StackMap locals:
StackMap stack:
54: iload 6
bipush 41
if_icmpne 72
55: iload 10
iconst_4
iadd
iload 11
if_icmple 60
56: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 16
57: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
58: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
59: aload 16
areturn
60: StackMap locals:
StackMap stack:
aload 9
iload 10
iconst_3
iadd
baload
istore 7
61: iinc 3 1
62: iload 7
bipush 65
if_icmpne 65
63: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
64: goto 133
StackMap locals:
StackMap stack:
65: iload 7
bipush 71
if_icmpne 68
66: aload 0
iconst_1
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
67: goto 133
68: StackMap locals:
StackMap stack:
iload 3
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 16
69: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
70: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
71: aload 16
areturn
72: StackMap locals:
StackMap stack:
iload 6
bipush 42
if_icmpne 85
73: iload 10
iconst_4
iadd
iload 11
if_icmple 78
74: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 16
75: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
76: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
77: aload 16
areturn
78: StackMap locals:
StackMap stack:
aload 9
iload 10
iconst_3
iadd
baload
istore 7
79: iinc 3 1
80: iload 7
bipush 72
if_icmpeq 133
81: iload 3
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 16
82: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
83: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
84: aload 16
areturn
85: StackMap locals:
StackMap stack:
iload 6
bipush 43
if_icmpne 98
86: iload 10
iconst_4
iadd
iload 11
if_icmple 91
87: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 16
88: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
89: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
90: aload 16
areturn
91: StackMap locals:
StackMap stack:
aload 9
iload 10
iconst_3
iadd
baload
istore 7
92: iinc 3 1
93: iload 7
bipush 73
if_icmpeq 133
94: iload 3
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 16
95: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
96: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
97: aload 16
areturn
98: StackMap locals:
StackMap stack:
iload 3
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 16
99: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
100: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
101: aload 16
areturn
102: StackMap locals:
StackMap stack:
iload 5
bipush 78
if_icmpeq 103
iload 5
bipush 79
if_icmpne 124
103: StackMap locals:
StackMap stack:
iload 10
iconst_4
iadd
iload 11
if_icmple 108
104: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 16
105: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
106: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
107: aload 16
areturn
108: StackMap locals:
StackMap stack:
aload 9
iload 10
iconst_2
iadd
baload
istore 6
109: aload 9
iload 10
iconst_3
iadd
baload
istore 7
110: iload 14
iload 13
isub
iconst_1
if_icmpge 115
111: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 16
112: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
113: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
114: aload 16
areturn
115: StackMap locals:
StackMap stack:
iinc 3 2
116: aload 0
iload 6
iload 7
iload 5
invokevirtual sun.nio.cs.ext.ISO2022_CN$Decoder.cnsDecode:(BBB)C
istore 8
117: iload 8
ldc 65533
if_icmpne 122
118: iload 3
invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
astore 16
119: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
120: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
121: aload 16
areturn
122: StackMap locals:
StackMap stack:
aload 12
iload 13
iinc 13 1
iload 8
castore
123: goto 133
124: StackMap locals:
StackMap stack:
iload 3
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 16
125: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
126: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
127: aload 16
areturn
128: StackMap locals:
StackMap stack:
iload 4
bipush 14
if_icmpne 131
129: aload 0
iconst_1
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.shiftOut:Z
130: goto 133
StackMap locals:
StackMap stack:
131: iload 4
bipush 15
if_icmpne 133
132: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022_CN$Decoder.shiftOut:Z
133: StackMap locals:
StackMap stack:
iload 10
iload 3
iadd
istore 10
134: iload 10
iconst_1
iadd
iload 11
if_icmple 139
135: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 16
136: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
137: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
138: aload 16
areturn
139: StackMap locals:
StackMap stack:
aload 9
iload 10
baload
istore 4
140: iconst_1
istore 3
141: StackMap locals:
StackMap stack:
iload 4
bipush 27
if_icmpeq 24
iload 4
bipush 14
if_icmpeq 24
iload 4
bipush 15
if_icmpeq 24
142: iload 14
iload 13
isub
iconst_1
if_icmpge 147
143: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 16
144: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
145: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
146: aload 16
areturn
147: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ext.ISO2022_CN$Decoder.shiftOut:Z
ifne 150
148: aload 12
iload 13
iinc 13 1
iload 4
sipush 255
iand
i2c
castore
149: goto 164
150: StackMap locals:
StackMap stack:
iload 10
iconst_2
iadd
iload 11
if_icmple 155
151: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 16
152: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
153: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
154: aload 16
areturn
155: StackMap locals:
StackMap stack:
aload 9
iload 10
iconst_1
iadd
baload
istore 5
156: iinc 3 1
157: aload 0
iload 4
iload 5
aload 0
getfield sun.nio.cs.ext.ISO2022_CN$Decoder.currentSODesig:B
invokevirtual sun.nio.cs.ext.ISO2022_CN$Decoder.SODecode:(BBB)C
istore 8
158: iload 8
ldc 65533
if_icmpne 163
159: iload 3
invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
astore 16
160: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
161: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
162: aload 16
areturn
163: StackMap locals:
StackMap stack:
aload 12
iload 13
iinc 13 1
iload 8
castore
164: StackMap locals:
StackMap stack:
iload 10
iload 3
iadd
istore 10
165: StackMap locals:
StackMap stack:
iload 10
iload 11
if_icmplt 21
166: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 16
167: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
168: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
169: aload 16
areturn
170: StackMap locals:
StackMap stack: java.lang.Throwable
astore 15
171: aload 1
iload 10
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
172: aload 2
iload 13
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
173: aload 15
athrow
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 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 174 0 this Lsun/nio/cs/ext/ISO2022_CN$Decoder;
0 174 1 src Ljava/nio/ByteBuffer;
0 174 2 dst Ljava/nio/CharBuffer;
1 174 3 inputSize I
2 174 4 b1 B
3 174 5 b2 B
4 174 6 b3 B
5 174 7 b4 B
6 174 8 c C
7 174 9 sa [B
8 174 10 sp I
9 174 11 sl I
14 174 12 da [C
15 174 13 dp I
16 174 14 dl I
Exception table:
from to target type
20 28 170 any
31 35 170 any
38 41 170 any
44 48 170 any
51 57 170 any
60 69 170 any
72 75 170 any
78 82 170 any
85 88 170 any
91 95 170 any
98 99 170 any
102 105 170 any
108 112 170 any
115 119 170 any
122 125 170 any
128 136 170 any
139 144 170 any
147 152 170 any
155 160 170 any
163 167 170 any
MethodParameters:
Name Flags
src
dst
protected java.nio.charset.CoderResult decodeLoop(java.nio.ByteBuffer, java.nio.CharBuffer);
descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.nio.ByteBuffer.hasArray:()Z
ifeq 2
aload 2
invokevirtual java.nio.CharBuffer.hasArray:()Z
ifeq 2
1: aload 0
aload 1
aload 2
invokevirtual sun.nio.cs.ext.ISO2022_CN$Decoder.decodeArrayLoop:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual sun.nio.cs.ext.ISO2022_CN$Decoder.decodeBufferLoop:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/nio/cs/ext/ISO2022_CN$Decoder;
0 3 1 src Ljava/nio/ByteBuffer;
0 3 2 dst Ljava/nio/CharBuffer;
MethodParameters:
Name Flags
src
dst
}
SourceFile: "ISO2022_CN.java"
NestHost: sun.nio.cs.ext.ISO2022_CN
InnerClasses:
public Decoder = sun.nio.cs.ext.DoubleByte$Decoder of sun.nio.cs.ext.DoubleByte
public Decoder = sun.nio.cs.ext.EUC_TW$Decoder of sun.nio.cs.ext.EUC_TW
Decoder = sun.nio.cs.ext.ISO2022_CN$Decoder of sun.nio.cs.ext.ISO2022_CN