public class sun.nio.cs.ext.ISO2022$Decoder extends java.nio.charset.CharsetDecoder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.nio.cs.ext.ISO2022$Decoder
super_class: java.nio.charset.CharsetDecoder
{
protected byte[][] SODesig;
descriptor: [[B
flags: (0x0004) ACC_PROTECTED
protected byte[][] SS2Desig;
descriptor: [[B
flags: (0x0004) ACC_PROTECTED
protected byte[][] SS3Desig;
descriptor: [[B
flags: (0x0004) ACC_PROTECTED
protected java.nio.charset.CharsetDecoder[] SODecoder;
descriptor: [Ljava/nio/charset/CharsetDecoder;
flags: (0x0004) ACC_PROTECTED
protected java.nio.charset.CharsetDecoder[] SS2Decoder;
descriptor: [Ljava/nio/charset/CharsetDecoder;
flags: (0x0004) ACC_PROTECTED
protected java.nio.charset.CharsetDecoder[] SS3Decoder;
descriptor: [Ljava/nio/charset/CharsetDecoder;
flags: (0x0004) ACC_PROTECTED
private static final byte SOFlag;
descriptor: B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final byte SS2Flag;
descriptor: B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final byte SS3Flag;
descriptor: B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private int curSODes;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int ;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int ;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean shiftout;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.nio.charset.CharsetDecoder[] tmpDecoder;
descriptor: [Ljava/nio/charset/CharsetDecoder;
flags: (0x0002) ACC_PRIVATE
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=1, locals=0, args_size=0
0: ldc Lsun/nio/cs/ext/ISO2022;
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$Decoder.$assertionsDisabled:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(java.nio.charset.Charset);
descriptor: (Ljava/nio/charset/Charset;)V
flags: (0x0004) ACC_PROTECTED
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
aconst_null
putfield sun.nio.cs.ext.ISO2022$Decoder.SS2Desig:[[B
2: aload 0
aconst_null
putfield sun.nio.cs.ext.ISO2022$Decoder.SS3Desig:[[B
3: aload 0
aconst_null
putfield sun.nio.cs.ext.ISO2022$Decoder.SS2Decoder:[Ljava/nio/charset/CharsetDecoder;
4: aload 0
aconst_null
putfield sun.nio.cs.ext.ISO2022$Decoder.SS3Decoder:[Ljava/nio/charset/CharsetDecoder;
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/nio/cs/ext/ISO2022$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$Decoder.curSODes:I
1: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022$Decoder.curSS2Des:I
2: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022$Decoder.curSS3Des:I
3: aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022$Decoder.shiftout:Z
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/nio/cs/ext/ISO2022$Decoder;
private char decode(byte, byte, byte);
descriptor: (BBB)C
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=10, 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_2
newarray 8
dup
iconst_0
iload 1
bastore
dup
iconst_1
iload 2
bastore
astore 4
start local 4 3: iconst_1
newarray 5
astore 5
start local 5 4: iconst_0
istore 6
start local 6 5: iconst_0
istore 7
start local 7 6: iload 3
tableswitch { // 0 - 2
0: 7
1: 10
2: 13
default: 15
}
7: StackMap locals: sun.nio.cs.ext.ISO2022$Decoder int int int byte[] char[] int int
StackMap stack:
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.curSODes:I
istore 7
8: aload 0
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SODecoder:[Ljava/nio/charset/CharsetDecoder;
putfield sun.nio.cs.ext.ISO2022$Decoder.tmpDecoder:[Ljava/nio/charset/CharsetDecoder;
9: goto 15
10: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.curSS2Des:I
istore 7
11: aload 0
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SS2Decoder:[Ljava/nio/charset/CharsetDecoder;
putfield sun.nio.cs.ext.ISO2022$Decoder.tmpDecoder:[Ljava/nio/charset/CharsetDecoder;
12: goto 15
13: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.curSS3Des:I
istore 7
14: aload 0
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SS3Decoder:[Ljava/nio/charset/CharsetDecoder;
putfield sun.nio.cs.ext.ISO2022$Decoder.tmpDecoder:[Ljava/nio/charset/CharsetDecoder;
15: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.tmpDecoder:[Ljava/nio/charset/CharsetDecoder;
ifnull 27
16: iconst_0
istore 6
goto 26
17: StackMap locals:
StackMap stack:
iload 7
iload 6
if_icmpne 25
18: aload 4
iconst_0
iconst_2
invokestatic java.nio.ByteBuffer.wrap:([BII)Ljava/nio/ByteBuffer;
astore 8
start local 8 19: aload 5
iconst_0
iconst_1
invokestatic java.nio.CharBuffer.wrap:([CII)Ljava/nio/CharBuffer;
astore 9
start local 9 20: aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.tmpDecoder:[Ljava/nio/charset/CharsetDecoder;
iload 6
aaload
aload 8
aload 9
iconst_1
invokevirtual java.nio.charset.CharsetDecoder.decode:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;Z)Ljava/nio/charset/CoderResult;
pop
21: aload 9
invokevirtual java.nio.CharBuffer.flip:()Ljava/nio/Buffer;
pop
22: aload 9
invokevirtual java.nio.CharBuffer.get:()C
23: ireturn
end local 9 end local 8 24: StackMap locals:
StackMap stack: java.lang.Exception
pop
25: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
26: iload 6
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.tmpDecoder:[Ljava/nio/charset/CharsetDecoder;
arraylength
if_icmplt 17
27: StackMap locals:
StackMap stack:
ldc 65533
ireturn
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 28 0 this Lsun/nio/cs/ext/ISO2022$Decoder;
0 28 1 byte1 B
0 28 2 byte2 B
0 28 3 shiftFlag B
3 28 4 tmpByte [B
4 28 5 tmpChar [C
5 28 6 i I
6 28 7 tmpIndex I
19 24 8 bb Ljava/nio/ByteBuffer;
20 24 9 cc Ljava/nio/CharBuffer;
Exception table:
from to target type
18 23 24 Class java.lang.Exception
MethodParameters:
Name Flags
byte1
byte2
shiftFlag
private int findDesig(byte[], int, int, byte[][]);
descriptor: ([BII[[B)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
ifnonnull 1
iconst_m1
ireturn
1: StackMap locals:
StackMap stack:
iconst_0
istore 5
start local 5 2: goto 11
3: StackMap locals: int
StackMap stack:
aload 4
iload 5
aaload
ifnull 10
iload 3
iload 2
isub
aload 4
iload 5
aaload
arraylength
if_icmplt 10
4: iconst_0
istore 6
start local 6 5: goto 7
StackMap locals: int
StackMap stack:
6: iinc 6 1
StackMap locals:
StackMap stack:
7: iload 6
aload 4
iload 5
aaload
arraylength
if_icmpge 8
aload 1
iload 2
iload 6
iadd
baload
aload 4
iload 5
aaload
iload 6
baload
if_icmpeq 6
8: StackMap locals:
StackMap stack:
iload 6
aload 4
iload 5
aaload
arraylength
if_icmpne 10
9: iload 5
ireturn
end local 6 10: StackMap locals:
StackMap stack:
iinc 5 1
11: StackMap locals:
StackMap stack:
iload 5
aload 4
arraylength
if_icmplt 3
12: iconst_m1
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 13 0 this Lsun/nio/cs/ext/ISO2022$Decoder;
0 13 1 in [B
0 13 2 sp I
0 13 3 sl I
0 13 4 desigs [[B
2 13 5 i I
5 10 6 j I
MethodParameters:
Name Flags
in
sp
sl
desigs
private int findDesigBuf(java.nio.ByteBuffer, byte[][]);
descriptor: (Ljava/nio/ByteBuffer;[[B)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 1
iconst_m1
ireturn
1: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 2: goto 13
3: StackMap locals: int
StackMap stack:
aload 2
iload 3
aaload
ifnull 12
aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
aload 2
iload 3
aaload
arraylength
if_icmplt 12
4: iconst_0
istore 4
start local 4 5: aload 1
invokevirtual java.nio.ByteBuffer.mark:()Ljava/nio/Buffer;
pop
6: goto 8
StackMap locals: int
StackMap stack:
7: iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
aload 2
iload 3
aaload
arraylength
if_icmpge 9
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
aload 2
iload 3
aaload
iload 4
baload
if_icmpeq 7
9: StackMap locals:
StackMap stack:
iload 4
aload 2
iload 3
aaload
arraylength
if_icmpne 11
10: iload 3
ireturn
11: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.reset:()Ljava/nio/Buffer;
pop
end local 4 12: StackMap locals:
StackMap stack:
iinc 3 1
13: StackMap locals:
StackMap stack:
iload 3
aload 2
arraylength
if_icmplt 3
14: iconst_m1
ireturn
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$Decoder;
0 15 1 in Ljava/nio/ByteBuffer;
0 15 2 desigs [[B
2 15 3 i I
5 12 4 j I
MethodParameters:
Name Flags
in
desigs
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=6, locals=16, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.nio.ByteBuffer.array:()[B
astore 3
start local 3 1: aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 1
invokevirtual java.nio.ByteBuffer.position:()I
iadd
istore 4
start local 4 2: aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 1
invokevirtual java.nio.ByteBuffer.limit:()I
iadd
istore 5
start local 5 3: getstatic sun.nio.cs.ext.ISO2022$Decoder.$assertionsDisabled:Z
ifne 4
iload 4
iload 5
if_icmple 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: byte[] int int
StackMap stack:
iload 4
iload 5
if_icmpgt 5
iload 4
goto 6
StackMap locals:
StackMap stack:
5: iload 5
StackMap locals:
StackMap stack: int
6: istore 4
7: aload 2
invokevirtual java.nio.CharBuffer.array:()[C
astore 6
start local 6 8: aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
aload 2
invokevirtual java.nio.CharBuffer.position:()I
iadd
istore 7
start local 7 9: aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
aload 2
invokevirtual java.nio.CharBuffer.limit:()I
iadd
istore 8
start local 8 10: getstatic sun.nio.cs.ext.ISO2022$Decoder.$assertionsDisabled:Z
ifne 11
iload 7
iload 8
if_icmple 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
11: StackMap locals: char[] int int
StackMap stack:
iload 7
iload 8
if_icmpgt 12
iload 7
goto 13
StackMap locals:
StackMap stack:
12: iload 8
StackMap locals:
StackMap stack: int
13: istore 7
14: iconst_0
istore 9
start local 9 15: iconst_0
istore 10
start local 10 16: iconst_0
istore 11
start local 11 17: goto 122
18: StackMap locals: int int int
StackMap stack:
aload 3
iload 4
baload
sipush 255
iand
istore 9
19: iconst_1
istore 12
start local 12 20: iload 9
lookupswitch { // 3
14: 21
15: 24
27: 27
default: 96
}
21: StackMap locals: int
StackMap stack:
aload 0
iconst_1
putfield sun.nio.cs.ext.ISO2022$Decoder.shiftout:Z
22: iconst_1
istore 12
23: goto 120
24: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022$Decoder.shiftout:Z
25: iconst_1
istore 12
26: goto 120
27: StackMap locals:
StackMap stack:
iload 5
iload 4
isub
iconst_1
isub
iconst_3
if_icmpge 32
28: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 15
29: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
30: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
31: aload 15
areturn
32: StackMap locals:
StackMap stack:
aload 0
aload 3
iload 4
iconst_1
iadd
iload 5
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SODesig:[[B
invokevirtual sun.nio.cs.ext.ISO2022$Decoder.findDesig:([BII[[B)I
istore 13
start local 13 33: iload 13
iconst_m1
if_icmpeq 37
34: aload 0
iload 13
putfield sun.nio.cs.ext.ISO2022$Decoder.curSODes:I
35: aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SODesig:[[B
iload 13
aaload
arraylength
iconst_1
iadd
istore 12
36: goto 120
37: StackMap locals: int
StackMap stack:
aload 0
aload 3
iload 4
iconst_1
iadd
iload 5
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SS2Desig:[[B
invokevirtual sun.nio.cs.ext.ISO2022$Decoder.findDesig:([BII[[B)I
istore 13
38: iload 13
iconst_m1
if_icmpeq 42
39: aload 0
iload 13
putfield sun.nio.cs.ext.ISO2022$Decoder.curSS2Des:I
40: aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SS2Desig:[[B
iload 13
aaload
arraylength
iconst_1
iadd
istore 12
41: goto 120
42: StackMap locals:
StackMap stack:
aload 0
aload 3
iload 4
iconst_1
iadd
iload 5
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SS3Desig:[[B
invokevirtual sun.nio.cs.ext.ISO2022$Decoder.findDesig:([BII[[B)I
istore 13
43: iload 13
iconst_m1
if_icmpeq 47
44: aload 0
iload 13
putfield sun.nio.cs.ext.ISO2022$Decoder.curSS3Des:I
45: aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SS3Desig:[[B
iload 13
aaload
arraylength
iconst_1
iadd
istore 12
46: goto 120
47: StackMap locals:
StackMap stack:
iload 5
iload 4
isub
iconst_2
if_icmpge 52
48: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 15
49: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
50: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
51: aload 15
areturn
52: StackMap locals:
StackMap stack:
aload 3
iload 4
iconst_1
iadd
baload
istore 9
53: iload 9
tableswitch { // 78 - 79
78: 54
79: 73
default: 92
}
54: StackMap locals:
StackMap stack:
iload 5
iload 4
isub
iconst_4
if_icmpge 59
55: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 15
56: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
57: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
58: aload 15
areturn
59: StackMap locals:
StackMap stack:
aload 3
iload 4
iconst_2
iadd
baload
istore 10
60: aload 3
iload 4
iconst_3
iadd
baload
istore 11
61: iload 8
iload 7
isub
iconst_1
if_icmpge 66
62: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 15
63: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
64: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
65: aload 15
areturn
66: StackMap locals:
StackMap stack:
aload 6
iload 7
aload 0
iload 10
i2b
67: iload 11
i2b
68: iconst_1
69: invokevirtual sun.nio.cs.ext.ISO2022$Decoder.decode:(BBB)C
castore
70: iinc 7 1
71: iconst_4
istore 12
72: goto 120
73: StackMap locals:
StackMap stack:
iload 5
iload 4
isub
iconst_4
if_icmpge 78
74: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 15
75: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
76: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
77: aload 15
areturn
78: StackMap locals:
StackMap stack:
aload 3
iload 4
iconst_2
iadd
baload
istore 10
79: aload 3
iload 4
iconst_3
iadd
baload
istore 11
80: iload 8
iload 7
isub
iconst_1
if_icmpge 85
81: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 15
82: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
83: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
84: aload 15
areturn
85: StackMap locals:
StackMap stack:
aload 6
iload 7
aload 0
iload 10
i2b
86: iload 11
i2b
87: iconst_2
88: invokevirtual sun.nio.cs.ext.ISO2022$Decoder.decode:(BBB)C
castore
89: iinc 7 1
90: iconst_4
istore 12
91: goto 120
92: StackMap locals:
StackMap stack:
iconst_2
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 15
93: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
94: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
95: aload 15
areturn
end local 13 96: StackMap locals:
StackMap stack:
iload 8
iload 7
isub
iconst_1
if_icmpge 101
97: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 15
98: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
99: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
100: aload 15
areturn
101: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.shiftout:Z
ifne 104
102: aload 6
iload 7
iinc 7 1
aload 3
iload 4
baload
sipush 255
iand
i2c
castore
103: goto 120
104: StackMap locals:
StackMap stack:
iload 8
iload 7
isub
iconst_1
if_icmpge 109
105: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 15
106: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
107: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
108: aload 15
areturn
109: StackMap locals:
StackMap stack:
iload 5
iload 4
isub
iconst_2
if_icmpge 114
110: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 15
111: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
112: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
113: aload 15
areturn
114: StackMap locals:
StackMap stack:
aload 3
iload 4
iconst_1
iadd
baload
sipush 255
iand
istore 10
115: aload 6
iload 7
iinc 7 1
aload 0
iload 9
i2b
116: iload 10
i2b
117: iconst_0
118: invokevirtual sun.nio.cs.ext.ISO2022$Decoder.decode:(BBB)C
castore
119: iconst_2
istore 12
120: StackMap locals:
StackMap stack:
iload 4
121: iload 12
iadd
istore 4
end local 12 122: StackMap locals:
StackMap stack:
iload 4
iload 5
if_icmplt 18
123: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 15
124: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
125: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
126: aload 15
areturn
127: StackMap locals:
StackMap stack: java.lang.Throwable
astore 14
128: aload 1
iload 4
aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
129: aload 2
iload 7
aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
130: aload 14
athrow
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 131 0 this Lsun/nio/cs/ext/ISO2022$Decoder;
0 131 1 src Ljava/nio/ByteBuffer;
0 131 2 dst Ljava/nio/CharBuffer;
1 131 3 sa [B
2 131 4 sp I
3 131 5 sl I
8 131 6 da [C
9 131 7 dp I
10 131 8 dl I
15 131 9 b1 I
16 131 10 b2 I
17 131 11 b3 I
20 122 12 inputSize I
33 96 13 desig I
Exception table:
from to target type
17 29 127 any
32 49 127 any
52 56 127 any
59 63 127 any
66 75 127 any
78 82 127 any
85 93 127 any
96 98 127 any
101 106 127 any
109 111 127 any
114 124 127 any
MethodParameters:
Name Flags
src
dst
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=5, locals=11, 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: goto 95
5: StackMap locals: sun.nio.cs.ext.ISO2022$Decoder java.nio.ByteBuffer java.nio.CharBuffer int int int int
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 4
6: iconst_1
istore 7
start local 7 7: iload 4
lookupswitch { // 3
14: 8
15: 10
27: 12
default: 72
}
8: StackMap locals: int
StackMap stack:
aload 0
iconst_1
putfield sun.nio.cs.ext.ISO2022$Decoder.shiftout:Z
9: goto 93
10: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.nio.cs.ext.ISO2022$Decoder.shiftout:Z
11: goto 93
12: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_3
if_icmpge 16
13: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 10
14: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
15: aload 10
areturn
16: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SODesig:[[B
invokevirtual sun.nio.cs.ext.ISO2022$Decoder.findDesigBuf:(Ljava/nio/ByteBuffer;[[B)I
istore 8
start local 8 17: iload 8
iconst_m1
if_icmpeq 21
18: aload 0
iload 8
putfield sun.nio.cs.ext.ISO2022$Decoder.curSODes:I
19: aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SODesig:[[B
iload 8
aaload
arraylength
iconst_1
iadd
istore 7
20: goto 93
21: StackMap locals: int
StackMap stack:
aload 0
aload 1
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SS2Desig:[[B
invokevirtual sun.nio.cs.ext.ISO2022$Decoder.findDesigBuf:(Ljava/nio/ByteBuffer;[[B)I
istore 8
22: iload 8
iconst_m1
if_icmpeq 26
23: aload 0
iload 8
putfield sun.nio.cs.ext.ISO2022$Decoder.curSS2Des:I
24: aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SS2Desig:[[B
iload 8
aaload
arraylength
iconst_1
iadd
istore 7
25: goto 93
26: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SS3Desig:[[B
invokevirtual sun.nio.cs.ext.ISO2022$Decoder.findDesigBuf:(Ljava/nio/ByteBuffer;[[B)I
istore 8
27: iload 8
iconst_m1
if_icmpeq 31
28: aload 0
iload 8
putfield sun.nio.cs.ext.ISO2022$Decoder.curSS3Des:I
29: aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.SS3Desig:[[B
iload 8
aaload
arraylength
iconst_1
iadd
istore 7
30: goto 93
31: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_1
if_icmpge 35
32: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 10
33: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
34: aload 10
areturn
35: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 4
36: iload 4
tableswitch { // 78 - 79
78: 37
79: 53
default: 69
}
37: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_2
if_icmpge 41
38: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 10
39: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
40: aload 10
areturn
41: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 5
42: aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 6
43: aload 2
invokevirtual java.nio.CharBuffer.remaining:()I
iconst_1
if_icmpge 47
44: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 10
45: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
46: aload 10
areturn
47: StackMap locals:
StackMap stack:
aload 2
aload 0
iload 5
i2b
48: iload 6
i2b
49: iconst_1
50: invokevirtual sun.nio.cs.ext.ISO2022$Decoder.decode:(BBB)C
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
51: iconst_4
istore 7
52: goto 93
53: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_2
if_icmpge 57
54: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 10
55: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
56: aload 10
areturn
57: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 5
58: aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 6
59: aload 2
invokevirtual java.nio.CharBuffer.remaining:()I
iconst_1
if_icmpge 63
60: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 10
61: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
62: aload 10
areturn
63: StackMap locals:
StackMap stack:
aload 2
aload 0
iload 5
i2b
64: iload 6
i2b
65: iconst_2
66: invokevirtual sun.nio.cs.ext.ISO2022$Decoder.decode:(BBB)C
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
67: iconst_4
istore 7
68: goto 93
69: StackMap locals:
StackMap stack:
iconst_2
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
astore 10
70: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
71: aload 10
areturn
end local 8 72: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.nio.CharBuffer.remaining:()I
iconst_1
if_icmpge 76
73: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 10
74: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
75: aload 10
areturn
76: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ext.ISO2022$Decoder.shiftout:Z
ifne 79
77: aload 2
iload 4
sipush 255
iand
i2c
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
78: goto 93
79: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.nio.CharBuffer.remaining:()I
iconst_1
if_icmpge 83
80: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 10
81: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
82: aload 10
areturn
83: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_1
if_icmpge 87
84: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 10
85: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
86: aload 10
areturn
87: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
sipush 255
iand
istore 5
88: aload 2
aload 0
iload 4
i2b
89: iload 5
i2b
90: iconst_0
91: invokevirtual sun.nio.cs.ext.ISO2022$Decoder.decode:(BBB)C
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
92: iconst_2
istore 7
93: StackMap locals:
StackMap stack:
iload 3
94: iload 7
iadd
istore 3
end local 7 95: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 5
96: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 10
97: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
98: aload 10
areturn
99: StackMap locals:
StackMap stack: java.lang.Exception
astore 7
start local 7 100: aload 7
invokevirtual java.lang.Exception.printStackTrace:()V
getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 10
101: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
aload 10
areturn
end local 7 102: StackMap locals:
StackMap stack: java.lang.Throwable
astore 9
103: aload 1
iload 3
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
104: aload 9
athrow
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 105 0 this Lsun/nio/cs/ext/ISO2022$Decoder;
0 105 1 src Ljava/nio/ByteBuffer;
0 105 2 dst Ljava/nio/CharBuffer;
1 105 3 mark I
2 105 4 b1 I
3 105 5 b2 I
4 105 6 b3 I
7 95 7 inputSize I
17 72 8 desig I
100 102 7 e Ljava/lang/Exception;
Exception table:
from to target type
4 14 99 Class java.lang.Exception
16 33 99 Class java.lang.Exception
35 39 99 Class java.lang.Exception
41 45 99 Class java.lang.Exception
47 55 99 Class java.lang.Exception
57 61 99 Class java.lang.Exception
63 70 99 Class java.lang.Exception
72 74 99 Class java.lang.Exception
76 81 99 Class java.lang.Exception
83 85 99 Class java.lang.Exception
87 97 99 Class java.lang.Exception
4 14 102 any
16 33 102 any
35 39 102 any
41 45 102 any
47 55 102 any
57 61 102 any
63 70 102 any
72 74 102 any
76 81 102 any
83 85 102 any
87 97 102 any
99 101 102 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$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$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$Decoder;
0 3 1 src Ljava/nio/ByteBuffer;
0 3 2 dst Ljava/nio/CharBuffer;
MethodParameters:
Name Flags
src
dst
}
SourceFile: "ISO2022.java"
NestHost: sun.nio.cs.ext.ISO2022
InnerClasses:
protected Decoder = sun.nio.cs.ext.ISO2022$Decoder of sun.nio.cs.ext.ISO2022