public class sun.io.ByteToCharISO2022JP extends sun.io.ByteToCharJIS0208
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.io.ByteToCharISO2022JP
super_class: sun.io.ByteToCharJIS0208
{
private static final int ASCII;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int JISX0201_1976;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int JISX0208_1978;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int JISX0208_1983;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int JISX0201_1976_KANA;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int SHIFTOUT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5
private int currentState;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int savedSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private byte[] savedBytes;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial sun.io.ByteToCharJIS0208.<init>:()V
1: aload 0
iconst_2
newarray 8
putfield sun.io.ByteToCharISO2022JP.savedBytes:[B
2: aload 0
iconst_0
putfield sun.io.ByteToCharISO2022JP.currentState:I
3: aload 0
iconst_0
putfield sun.io.ByteToCharISO2022JP.savedSize:I
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/io/ByteToCharISO2022JP;
public int flush(char[], int, int);
descriptor: ([CII)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
ifeq 5
1: aload 0
iconst_0
putfield sun.io.ByteToCharISO2022JP.savedSize:I
2: aload 0
iconst_0
putfield sun.io.ByteToCharISO2022JP.currentState:I
3: aload 0
iconst_0
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
4: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
aload 0
aload 0
iconst_0
dup_x1
putfield sun.io.ByteToCharISO2022JP.charOff:I
putfield sun.io.ByteToCharISO2022JP.byteOff:I
6: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/io/ByteToCharISO2022JP;
0 7 1 output [C
0 7 2 outStart I
0 7 3 outEnd I
Exceptions:
throws sun.io.MalformedInputException
MethodParameters:
Name Flags
output
outStart
outEnd
public int convert(byte[], int, int, char[], int, int);
descriptor: ([BII[CII)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=15, 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: iconst_0
istore 7
start local 7 1: iconst_0
istore 8
start local 8 2: ldc 65533
istore 9
start local 9 3: aload 0
iload 2
dup_x1
putfield sun.io.ByteToCharISO2022JP.byteOff:I
istore 10
start local 10 4: aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
ifeq 37
5: aload 0
getfield sun.io.ByteToCharISO2022JP.savedBytes:[B
iconst_0
baload
bipush 27
if_icmpne 25
6: aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
iconst_2
if_icmpne 14
7: aload 0
getfield sun.io.ByteToCharISO2022JP.savedBytes:[B
iconst_1
baload
bipush 40
if_icmpne 14
8: aload 1
iconst_0
baload
bipush 66
if_icmpeq 14
9: aload 1
iconst_0
baload
bipush 74
if_icmpeq 14
10: aload 1
iconst_0
baload
bipush 73
if_icmpeq 14
11: aload 0
getfield sun.io.ByteToCharISO2022JP.savedBytes:[B
iconst_1
baload
bipush 36
if_icmpne 14
12: aload 1
iconst_0
baload
bipush 64
if_icmpeq 14
13: aload 1
iconst_0
baload
bipush 66
if_icmpne 17
14: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int
StackMap stack:
aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
iconst_1
if_icmpne 19
15: aload 1
iconst_0
baload
bipush 40
if_icmpeq 19
16: aload 1
iconst_0
baload
bipush 36
if_icmpeq 19
17: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
18: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
19: StackMap locals:
StackMap stack:
iload 3
iload 2
isub
iconst_1
if_icmpne 25
aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
iconst_1
if_icmpne 25
20: aload 0
getfield sun.io.ByteToCharISO2022JP.savedBytes:[B
iconst_0
baload
bipush 27
if_icmpne 25
21: aload 0
iconst_2
putfield sun.io.ByteToCharISO2022JP.savedSize:I
22: aload 0
getfield sun.io.ByteToCharISO2022JP.savedBytes:[B
iconst_1
aload 1
iconst_0
baload
bastore
23: aload 0
dup
getfield sun.io.ByteToCharISO2022JP.byteOff:I
iconst_1
iadd
putfield sun.io.ByteToCharISO2022JP.byteOff:I
24: iconst_0
ireturn
25: StackMap locals:
StackMap stack:
iload 3
iload 2
isub
aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
iadd
newarray 8
astore 11
start local 11 26: iconst_0
istore 12
start local 12 27: goto 30
28: StackMap locals: byte[] int
StackMap stack:
aload 11
iload 12
aload 0
getfield sun.io.ByteToCharISO2022JP.savedBytes:[B
iload 12
baload
bastore
29: iinc 12 1
StackMap locals:
StackMap stack:
30: iload 12
aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
if_icmplt 28
end local 12 31: aload 1
iload 2
aload 11
aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
iload 3
iload 2
isub
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
32: aload 0
dup
getfield sun.io.ByteToCharISO2022JP.byteOff:I
aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
isub
putfield sun.io.ByteToCharISO2022JP.byteOff:I
33: aload 11
astore 1
34: iconst_0
istore 2
35: aload 11
arraylength
istore 3
36: aload 0
iconst_0
putfield sun.io.ByteToCharISO2022JP.savedSize:I
end local 11 37: StackMap locals:
StackMap stack:
aload 0
iload 5
putfield sun.io.ByteToCharISO2022JP.charOff:I
38: iload 2
istore 10
39: goto 168
40: StackMap locals:
StackMap stack:
iconst_0
istore 14
start local 14 41: aload 0
getfield sun.io.ByteToCharISO2022JP.charOff:I
iload 6
if_icmplt 43
42: new sun.io.ConversionBufferFullException
dup
invokespecial sun.io.ConversionBufferFullException.<init>:()V
athrow
43: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int top top top int
StackMap stack:
aload 1
iload 10
baload
sipush 255
iand
istore 11
start local 11 44: iconst_1
istore 8
45: iload 11
bipush -128
iand
ifeq 121
46: aload 0
iconst_1
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
47: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
48: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int int top top int
StackMap stack:
iload 11
bipush 27
if_icmpne 100
49: iload 10
iload 8
iadd
iconst_1
iadd
iload 3
if_icmplt 59
50: iload 10
iload 8
iadd
iload 3
if_icmplt 54
51: aload 0
iconst_1
putfield sun.io.ByteToCharISO2022JP.savedSize:I
52: aload 0
getfield sun.io.ByteToCharISO2022JP.savedBytes:[B
iconst_0
iload 11
i2b
bastore
53: goto 122
54: StackMap locals:
StackMap stack:
aload 0
iconst_2
putfield sun.io.ByteToCharISO2022JP.savedSize:I
55: aload 0
getfield sun.io.ByteToCharISO2022JP.savedBytes:[B
iconst_0
iload 11
i2b
bastore
56: aload 0
getfield sun.io.ByteToCharISO2022JP.savedBytes:[B
iconst_1
aload 1
iload 10
iload 8
iadd
baload
bastore
57: iinc 8 1
58: goto 122
59: StackMap locals:
StackMap stack:
aload 1
iload 10
iload 8
iadd
baload
sipush 255
iand
istore 12
start local 12 60: iinc 8 1
61: iload 12
bipush -128
iand
ifeq 64
62: aload 0
iconst_2
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
63: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
64: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int int int top int
StackMap stack:
iload 12
bipush 40
if_icmpne 78
65: aload 1
iload 10
iload 8
iadd
baload
sipush 255
iand
istore 13
start local 13 66: iinc 8 1
67: iload 13
bipush 66
if_icmpne 70
68: aload 0
iconst_0
putfield sun.io.ByteToCharISO2022JP.currentState:I
69: goto 94
StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int int int int int
StackMap stack:
70: iload 13
bipush 74
if_icmpne 73
71: aload 0
iconst_1
putfield sun.io.ByteToCharISO2022JP.currentState:I
72: goto 94
StackMap locals:
StackMap stack:
73: iload 13
bipush 73
if_icmpne 76
74: aload 0
iconst_4
putfield sun.io.ByteToCharISO2022JP.currentState:I
75: goto 94
76: StackMap locals:
StackMap stack:
aload 0
iconst_3
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
77: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
end local 13 78: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int int int top int
StackMap stack:
iload 12
bipush 36
if_icmpne 92
79: aload 1
iload 10
iload 8
iadd
baload
sipush 255
iand
istore 13
start local 13 80: iinc 8 1
81: iload 13
bipush -128
iand
ifeq 84
82: aload 0
iconst_3
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
83: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
84: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int int int int int
StackMap stack:
iload 13
bipush 64
if_icmpne 87
85: aload 0
iconst_2
putfield sun.io.ByteToCharISO2022JP.currentState:I
86: goto 94
StackMap locals:
StackMap stack:
87: iload 13
bipush 66
if_icmpne 90
88: aload 0
iconst_3
putfield sun.io.ByteToCharISO2022JP.currentState:I
89: goto 94
90: StackMap locals:
StackMap stack:
aload 0
iconst_3
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
91: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
end local 13 92: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int int int top int
StackMap stack:
aload 0
iconst_2
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
93: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
start local 13 94: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int int int int int
StackMap stack:
iload 10
iload 8
iadd
iload 3
if_icmplt 97
95: iconst_1
istore 14
96: goto 122
97: StackMap locals:
StackMap stack:
aload 1
iload 10
iload 8
iadd
baload
istore 11
98: iinc 8 1
99: goto 121
end local 13 end local 12 StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int int top top int
StackMap stack:
100: iload 11
bipush 14
if_icmpne 111
101: aload 0
getfield sun.io.ByteToCharISO2022JP.currentState:I
istore 7
102: aload 0
iconst_5
putfield sun.io.ByteToCharISO2022JP.currentState:I
103: iload 10
iload 8
iadd
iload 3
if_icmplt 106
104: iconst_1
istore 14
105: goto 122
106: StackMap locals:
StackMap stack:
aload 1
iload 10
iload 8
iadd
baload
istore 11
107: iinc 8 1
108: iload 11
bipush -128
iand
ifeq 121
109: aload 0
iconst_1
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
110: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
111: StackMap locals:
StackMap stack:
iload 11
bipush 15
if_icmpne 121
112: aload 0
iload 7
putfield sun.io.ByteToCharISO2022JP.currentState:I
113: iload 10
iload 8
iadd
iload 3
if_icmplt 116
114: iconst_1
istore 14
115: goto 122
116: StackMap locals:
StackMap stack:
aload 1
iload 10
iload 8
iadd
baload
istore 11
117: iinc 8 1
118: iload 11
bipush -128
iand
ifeq 121
119: aload 0
iconst_1
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
120: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
121: StackMap locals:
StackMap stack:
iload 11
bipush 27
if_icmpeq 48
iload 11
bipush 14
if_icmpeq 48
iload 11
bipush 15
if_icmpeq 48
122: StackMap locals:
StackMap stack:
iload 14
ifne 123
aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
ifeq 125
123: StackMap locals:
StackMap stack:
aload 0
dup
getfield sun.io.ByteToCharISO2022JP.byteOff:I
iload 8
iadd
putfield sun.io.ByteToCharISO2022JP.byteOff:I
124: goto 169
125: StackMap locals:
StackMap stack:
iconst_0
istore 14
126: aload 0
getfield sun.io.ByteToCharISO2022JP.currentState:I
tableswitch { // 0 - 5
0: 127
1: 129
2: 136
3: 136
4: 153
5: 153
default: 157
}
127: StackMap locals:
StackMap stack:
iload 11
sipush 255
iand
i2c
istore 9
128: goto 157
129: StackMap locals:
StackMap stack:
iload 11
lookupswitch { // 2
92: 130
126: 132
default: 134
}
130: StackMap locals:
StackMap stack:
sipush 165
istore 9
131: goto 157
132: StackMap locals:
StackMap stack:
sipush 8254
istore 9
133: goto 157
134: StackMap locals:
StackMap stack:
iload 11
i2c
istore 9
135: goto 157
136: StackMap locals:
StackMap stack:
iload 10
iload 8
iadd
iload 3
if_icmplt 140
137: aload 0
iconst_1
putfield sun.io.ByteToCharISO2022JP.savedSize:I
138: aload 0
getfield sun.io.ByteToCharISO2022JP.savedBytes:[B
iconst_0
iload 11
i2b
bastore
139: goto 157
140: StackMap locals:
StackMap stack:
aload 1
iload 10
iload 8
iadd
baload
sipush 255
iand
istore 12
start local 12 141: iinc 8 1
142: iload 12
bipush -128
iand
ifeq 145
143: aload 0
iconst_1
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
144: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
145: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int int int top int
StackMap stack:
iload 11
bipush 33
if_icmpne 148
iload 12
bipush 64
if_icmpne 148
146: ldc 65340
istore 9
147: goto 157
148: StackMap locals:
StackMap stack:
aload 0
iload 11
iload 12
invokevirtual sun.io.ByteToCharISO2022JP.getUnicode:(II)C
istore 9
149: goto 157
StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
150: pop
151: ldc 65533
istore 9
152: goto 157
end local 12 153: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int int top top int
StackMap stack:
iload 11
bipush 96
if_icmple 156
154: aload 0
iconst_1
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
155: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
156: StackMap locals:
StackMap stack:
iload 11
ldc 65344
iadd
i2c
istore 9
157: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.ByteToCharISO2022JP.savedSize:I
ifeq 160
158: aload 0
dup
getfield sun.io.ByteToCharISO2022JP.byteOff:I
iload 8
iadd
putfield sun.io.ByteToCharISO2022JP.byteOff:I
159: goto 169
160: StackMap locals:
StackMap stack:
iload 9
ldc 65533
if_icmpne 165
161: aload 0
getfield sun.io.ByteToCharISO2022JP.subMode:Z
ifeq 163
162: aload 0
getfield sun.io.ByteToCharISO2022JP.subChars:[C
iconst_0
caload
istore 9
goto 165
163: StackMap locals:
StackMap stack:
aload 0
iload 8
putfield sun.io.ByteToCharISO2022JP.badInputLength:I
164: new sun.io.UnknownCharacterException
dup
invokespecial sun.io.UnknownCharacterException.<init>:()V
athrow
165: StackMap locals:
StackMap stack:
iload 10
iload 8
iadd
istore 10
166: aload 0
dup
getfield sun.io.ByteToCharISO2022JP.byteOff:I
iload 8
iadd
putfield sun.io.ByteToCharISO2022JP.byteOff:I
167: aload 4
aload 0
dup
getfield sun.io.ByteToCharISO2022JP.charOff:I
dup_x1
iconst_1
iadd
putfield sun.io.ByteToCharISO2022JP.charOff:I
iload 9
castore
end local 14 end local 11 168: StackMap locals: sun.io.ByteToCharISO2022JP byte[] int int char[] int int int int int int
StackMap stack:
iload 10
iload 3
if_icmplt 40
169: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.ByteToCharISO2022JP.charOff:I
iload 5
isub
ireturn
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 170 0 this Lsun/io/ByteToCharISO2022JP;
0 170 1 input [B
0 170 2 inOff I
0 170 3 inEnd I
0 170 4 output [C
0 170 5 outOff I
0 170 6 outEnd I
1 170 7 previousState I
2 170 8 inputSize I
3 170 9 outputChar C
4 170 10 readOff I
26 37 11 newBuf [B
27 31 12 i I
44 168 11 byte1 I
60 100 12 byte2 I
141 153 12 byte2 I
66 78 13 byte3 I
80 92 13 byte3 I
94 100 13 byte3 I
41 168 14 noOutput Z
Exception table:
from to target type
148 149 150 Class java.lang.ArrayIndexOutOfBoundsException
Exceptions:
throws sun.io.UnknownCharacterException, sun.io.MalformedInputException, sun.io.ConversionBufferFullException
MethodParameters:
Name Flags
input
inOff
inEnd
output
outOff
outEnd
public void reset();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
aload 0
iconst_0
dup_x1
putfield sun.io.ByteToCharISO2022JP.charOff:I
putfield sun.io.ByteToCharISO2022JP.byteOff:I
1: aload 0
iconst_0
putfield sun.io.ByteToCharISO2022JP.currentState:I
2: aload 0
iconst_0
putfield sun.io.ByteToCharISO2022JP.savedSize:I
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/io/ByteToCharISO2022JP;
public java.lang.String getCharacterEncoding();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "ISO2022JP"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/io/ByteToCharISO2022JP;
}
SourceFile: "ByteToCharISO2022JP.java"