public class sun.io.CharToByteCp949C extends sun.io.CharToByteConverter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.io.CharToByteCp949C
super_class: sun.io.CharToByteConverter
{
private static final char SBase;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 44032
private static final char LBase;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4352
private static final char VBase;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4449
private static final char TBase;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4519
private static final int VCount;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 21
private static final int TCount;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 28
private static final byte G0;
descriptor: B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final byte G1;
descriptor: B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final byte G2;
descriptor: B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final byte G3;
descriptor: B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private byte charState;
descriptor: B
flags: (0x0002) ACC_PRIVATE
private char l;
descriptor: C
flags: (0x0002) ACC_PRIVATE
private char v;
descriptor: C
flags: (0x0002) ACC_PRIVATE
private char t;
descriptor: C
flags: (0x0002) ACC_PRIVATE
private byte[] outputByte;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
private char highHalfZoneCode;
descriptor: C
flags: (0x0002) ACC_PRIVATE
private int mask1;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mask2;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int shift;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private short[] index1;
descriptor: [S
flags: (0x0002) ACC_PRIVATE
private java.lang.String index2;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String index2a;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private static final sun.nio.cs.ext.IBM949C nioCoder;
descriptor: Lsun/nio/cs/ext/IBM949C;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new sun.nio.cs.ext.IBM949C
dup
invokespecial sun.nio.cs.ext.IBM949C.<init>:()V
putstatic sun.io.CharToByteCp949C.nioCoder:Lsun/nio/cs/ext/IBM949C;
return
LocalVariableTable:
Start End Slot Name Signature
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.CharToByteConverter.<init>:()V
1: aload 0
iconst_0
putfield sun.io.CharToByteCp949C.charState:B
2: aload 0
getstatic sun.io.CharToByteCp949C.nioCoder:Lsun/nio/cs/ext/IBM949C;
invokevirtual sun.nio.cs.ext.IBM949C.getEncoderIndex1:()[S
putfield sun.io.CharToByteCp949C.index1:[S
3: aload 0
getstatic sun.io.CharToByteCp949C.nioCoder:Lsun/nio/cs/ext/IBM949C;
invokevirtual sun.nio.cs.ext.IBM949C.getEncoderIndex2:()Ljava/lang/String;
putfield sun.io.CharToByteCp949C.index2:Ljava/lang/String;
4: aload 0
getstatic sun.io.CharToByteCp949C.nioCoder:Lsun/nio/cs/ext/IBM949C;
invokevirtual sun.nio.cs.ext.IBM949C.getEncoderIndex2a:()Ljava/lang/String;
putfield sun.io.CharToByteCp949C.index2a:Ljava/lang/String;
5: aload 0
iconst_0
putfield sun.io.CharToByteCp949C.highHalfZoneCode:C
6: aload 0
iconst_2
newarray 8
putfield sun.io.CharToByteCp949C.outputByte:[B
7: aload 0
ldc 65528
putfield sun.io.CharToByteCp949C.mask1:I
8: aload 0
bipush 7
putfield sun.io.CharToByteCp949C.mask2:I
9: aload 0
iconst_3
putfield sun.io.CharToByteCp949C.shift:I
10: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/io/CharToByteCp949C;
public int flush(byte[], int, int);
descriptor: ([BII)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 2
putfield sun.io.CharToByteCp949C.byteOff:I
1: aload 0
getfield sun.io.CharToByteCp949C.highHalfZoneCode:C
ifeq 5
2: aload 0
invokevirtual sun.io.CharToByteCp949C.reset:()V
3: aload 0
iconst_0
putfield sun.io.CharToByteCp949C.badInputLength:I
4: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.charState:B
ifeq 13
6: aload 0
aload 0
invokevirtual sun.io.CharToByteCp949C.composeHangul:()C
aload 1
iload 3
invokevirtual sun.io.CharToByteCp949C.unicodeToBuffer:(C[BI)V
7: goto 12
8: StackMap locals:
StackMap stack: sun.io.UnknownCharacterException
pop
9: aload 0
invokevirtual sun.io.CharToByteCp949C.reset:()V
10: aload 0
iconst_0
putfield sun.io.CharToByteCp949C.badInputLength:I
11: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
12: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.io.CharToByteCp949C.charState:B
13: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.byteOff:I
iload 2
isub
istore 4
start local 4 14: aload 0
invokevirtual sun.io.CharToByteCp949C.reset:()V
15: iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lsun/io/CharToByteCp949C;
0 16 1 output [B
0 16 2 outStart I
0 16 3 outEnd I
14 16 4 bytesOut I
Exception table:
from to target type
6 7 8 Class sun.io.UnknownCharacterException
Exceptions:
throws sun.io.MalformedInputException, sun.io.ConversionBufferFullException
MethodParameters:
Name Flags
output
outStart
outEnd
public void reset();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield sun.io.CharToByteCp949C.highHalfZoneCode:C
1: aload 0
iconst_0
putfield sun.io.CharToByteCp949C.charState:B
2: aload 0
aload 0
iconst_0
dup_x1
putfield sun.io.CharToByteCp949C.byteOff:I
putfield sun.io.CharToByteCp949C.charOff:I
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/io/CharToByteCp949C;
public boolean canConvert(char);
descriptor: (C)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.io.CharToByteCp949C.index1:[S
iload 1
aload 0
getfield sun.io.CharToByteCp949C.mask1:I
iand
aload 0
getfield sun.io.CharToByteCp949C.shift:I
ishr
saload
iload 1
aload 0
getfield sun.io.CharToByteCp949C.mask2:I
iand
iadd
istore 2
start local 2 1: iload 2
sipush 15000
if_icmpge 4
2: aload 0
getfield sun.io.CharToByteCp949C.index2:Ljava/lang/String;
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 3
start local 3 3: goto 5
end local 3 4: StackMap locals: int
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.index2a:Ljava/lang/String;
iload 2
sipush 15000
isub
invokevirtual java.lang.String.charAt:(I)C
istore 3
start local 3 5: StackMap locals: int
StackMap stack:
iload 3
ifeq 7
6: iconst_1
ireturn
7: StackMap locals:
StackMap stack:
iload 1
ifne 8
iconst_1
ireturn
StackMap locals:
StackMap stack:
8: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/io/CharToByteCp949C;
0 9 1 ch C
1 9 2 index I
3 4 3 theBytes I
5 9 3 theBytes I
MethodParameters:
Name Flags
ch
public int convert(char[], int, int, byte[], int, int);
descriptor: ([CII[BII)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, 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
iload 2
putfield sun.io.CharToByteCp949C.charOff:I
1: aload 0
iload 5
putfield sun.io.CharToByteCp949C.byteOff:I
2: goto 92
3: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.highHalfZoneCode:C
ifne 7
4: aload 1
aload 0
getfield sun.io.CharToByteCp949C.charOff:I
caload
istore 7
start local 7 5: iconst_1
istore 8
start local 8 6: goto 10
end local 8 end local 7 7: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.highHalfZoneCode:C
istore 7
start local 7 8: iconst_0
istore 8
start local 8 9: aload 0
iconst_0
putfield sun.io.CharToByteCp949C.highHalfZoneCode:C
10: StackMap locals: int int
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.charState:B
tableswitch { // 0 - 3
0: 11
1: 26
2: 40
3: 58
default: 64
}
11: StackMap locals:
StackMap stack:
aload 0
sipush 4352
putfield sun.io.CharToByteCp949C.l:C
12: aload 0
sipush 4449
putfield sun.io.CharToByteCp949C.v:C
13: aload 0
sipush 4519
putfield sun.io.CharToByteCp949C.t:C
14: aload 0
iload 7
invokevirtual sun.io.CharToByteCp949C.isLeadingC:(C)Z
ifeq 18
15: aload 0
iload 7
putfield sun.io.CharToByteCp949C.l:C
16: aload 0
iconst_1
putfield sun.io.CharToByteCp949C.charState:B
17: goto 64
18: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual sun.io.CharToByteCp949C.isVowel:(C)Z
ifeq 22
19: aload 0
iload 7
putfield sun.io.CharToByteCp949C.v:C
20: aload 0
iconst_2
putfield sun.io.CharToByteCp949C.charState:B
21: goto 64
22: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual sun.io.CharToByteCp949C.isTrailingC:(C)Z
ifeq 64
23: aload 0
iload 7
putfield sun.io.CharToByteCp949C.t:C
24: aload 0
iconst_3
putfield sun.io.CharToByteCp949C.charState:B
25: goto 64
26: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual sun.io.CharToByteCp949C.isLeadingC:(C)Z
ifeq 29
27: aload 0
aload 0
aload 0
getfield sun.io.CharToByteCp949C.l:C
iload 7
invokevirtual sun.io.CharToByteCp949C.composeLL:(CC)C
putfield sun.io.CharToByteCp949C.l:C
28: goto 64
29: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual sun.io.CharToByteCp949C.isVowel:(C)Z
ifeq 33
30: aload 0
iload 7
putfield sun.io.CharToByteCp949C.v:C
31: aload 0
iconst_2
putfield sun.io.CharToByteCp949C.charState:B
32: goto 64
33: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual sun.io.CharToByteCp949C.isTrailingC:(C)Z
ifeq 37
34: aload 0
iload 7
putfield sun.io.CharToByteCp949C.t:C
35: aload 0
iconst_3
putfield sun.io.CharToByteCp949C.charState:B
36: goto 64
37: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual sun.io.CharToByteCp949C.composeHangul:()C
aload 4
iload 6
invokevirtual sun.io.CharToByteCp949C.unicodeToBuffer:(C[BI)V
38: aload 0
iconst_0
putfield sun.io.CharToByteCp949C.charState:B
39: goto 64
40: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual sun.io.CharToByteCp949C.isLeadingC:(C)Z
ifeq 47
41: aload 0
aload 0
invokevirtual sun.io.CharToByteCp949C.composeHangul:()C
aload 4
iload 6
invokevirtual sun.io.CharToByteCp949C.unicodeToBuffer:(C[BI)V
42: aload 0
iload 7
putfield sun.io.CharToByteCp949C.l:C
43: aload 0
sipush 4449
putfield sun.io.CharToByteCp949C.v:C
44: aload 0
sipush 4519
putfield sun.io.CharToByteCp949C.t:C
45: aload 0
iconst_1
putfield sun.io.CharToByteCp949C.charState:B
46: goto 64
47: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual sun.io.CharToByteCp949C.isVowel:(C)Z
ifeq 51
48: aload 0
aload 0
aload 0
getfield sun.io.CharToByteCp949C.l:C
iload 7
invokevirtual sun.io.CharToByteCp949C.composeVV:(CC)C
putfield sun.io.CharToByteCp949C.v:C
49: aload 0
iconst_2
putfield sun.io.CharToByteCp949C.charState:B
50: goto 64
51: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual sun.io.CharToByteCp949C.isTrailingC:(C)Z
ifeq 55
52: aload 0
iload 7
putfield sun.io.CharToByteCp949C.t:C
53: aload 0
iconst_3
putfield sun.io.CharToByteCp949C.charState:B
54: goto 64
55: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual sun.io.CharToByteCp949C.composeHangul:()C
aload 4
iload 6
invokevirtual sun.io.CharToByteCp949C.unicodeToBuffer:(C[BI)V
56: aload 0
iconst_0
putfield sun.io.CharToByteCp949C.charState:B
57: goto 64
58: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual sun.io.CharToByteCp949C.isTrailingC:(C)Z
ifeq 62
59: aload 0
aload 0
aload 0
getfield sun.io.CharToByteCp949C.t:C
iload 7
invokevirtual sun.io.CharToByteCp949C.composeTT:(CC)C
putfield sun.io.CharToByteCp949C.t:C
60: aload 0
iconst_3
putfield sun.io.CharToByteCp949C.charState:B
61: goto 64
62: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual sun.io.CharToByteCp949C.composeHangul:()C
aload 4
iload 6
invokevirtual sun.io.CharToByteCp949C.unicodeToBuffer:(C[BI)V
63: aload 0
iconst_0
putfield sun.io.CharToByteCp949C.charState:B
64: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.charState:B
ifeq 66
65: aload 0
dup
getfield sun.io.CharToByteCp949C.charOff:I
iconst_1
iadd
putfield sun.io.CharToByteCp949C.charOff:I
goto 92
66: StackMap locals:
StackMap stack:
iload 7
ldc 55296
if_icmplt 87
iload 7
ldc 56319
if_icmpgt 87
67: aload 0
getfield sun.io.CharToByteCp949C.charOff:I
iload 8
iadd
iload 3
if_icmplt 71
68: aload 0
iload 7
putfield sun.io.CharToByteCp949C.highHalfZoneCode:C
69: aload 0
dup
getfield sun.io.CharToByteCp949C.charOff:I
iload 8
iadd
putfield sun.io.CharToByteCp949C.charOff:I
70: goto 93
71: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield sun.io.CharToByteCp949C.charOff:I
iload 8
iadd
caload
istore 7
72: iload 7
ldc 56320
if_icmplt 85
iload 7
ldc 57343
if_icmpgt 85
73: aload 0
getfield sun.io.CharToByteCp949C.subMode:Z
ifeq 83
74: aload 0
getfield sun.io.CharToByteCp949C.subBytes:[B
arraylength
iconst_1
if_icmpne 78
75: aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_0
iconst_0
bastore
76: aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_1
aload 0
getfield sun.io.CharToByteCp949C.subBytes:[B
iconst_0
baload
bastore
77: goto 80
78: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_0
aload 0
getfield sun.io.CharToByteCp949C.subBytes:[B
iconst_0
baload
bastore
79: aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_1
aload 0
getfield sun.io.CharToByteCp949C.subBytes:[B
iconst_1
baload
bastore
80: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
aload 4
iload 6
invokevirtual sun.io.CharToByteCp949C.bytesToBuffer:([B[BI)V
81: iinc 8 1
82: goto 91
83: StackMap locals:
StackMap stack:
aload 0
iconst_2
putfield sun.io.CharToByteCp949C.badInputLength:I
84: new sun.io.UnknownCharacterException
dup
invokespecial sun.io.UnknownCharacterException.<init>:()V
athrow
85: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield sun.io.CharToByteCp949C.badInputLength:I
86: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
87: StackMap locals:
StackMap stack:
iload 7
ldc 56320
if_icmplt 90
iload 7
ldc 57343
if_icmpgt 90
88: aload 0
iconst_1
putfield sun.io.CharToByteCp949C.badInputLength:I
89: new sun.io.MalformedInputException
dup
invokespecial sun.io.MalformedInputException.<init>:()V
athrow
90: StackMap locals:
StackMap stack:
aload 0
iload 7
aload 4
iload 6
invokevirtual sun.io.CharToByteCp949C.unicodeToBuffer:(C[BI)V
91: StackMap locals:
StackMap stack:
aload 0
dup
getfield sun.io.CharToByteCp949C.charOff:I
iload 8
iadd
putfield sun.io.CharToByteCp949C.charOff:I
end local 8 end local 7 92: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.charOff:I
iload 3
if_icmplt 3
93: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.byteOff:I
iload 5
isub
ireturn
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 94 0 this Lsun/io/CharToByteCp949C;
0 94 1 input [C
0 94 2 inOff I
0 94 3 inEnd I
0 94 4 output [B
0 94 5 outOff I
0 94 6 outEnd I
5 7 7 inputChar C
8 92 7 inputChar C
6 7 8 inputSize I
9 92 8 inputSize I
Exceptions:
throws sun.io.UnknownCharacterException, sun.io.MalformedInputException, sun.io.ConversionBufferFullException
MethodParameters:
Name Flags
input
inOff
inEnd
output
outOff
outEnd
private char composeHangul();
descriptor: ()C
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield sun.io.CharToByteCp949C.l:C
sipush 4352
isub
istore 1
start local 1 1: aload 0
getfield sun.io.CharToByteCp949C.v:C
sipush 4449
isub
istore 2
start local 2 2: aload 0
getfield sun.io.CharToByteCp949C.t:C
sipush 4519
isub
istore 3
start local 3 3: iload 1
bipush 21
imul
iload 2
iadd
bipush 28
imul
iload 3
iadd
ldc 44032
iadd
i2c
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/io/CharToByteCp949C;
1 4 1 lIndex I
2 4 2 vIndex I
3 4 3 tIndex I
private char composeLL(char, char);
descriptor: (CC)C
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/io/CharToByteCp949C;
0 1 1 l1 C
0 1 2 l2 C
MethodParameters:
Name Flags
l1
l2
private char composeVV(char, char);
descriptor: (CC)C
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/io/CharToByteCp949C;
0 1 1 v1 C
0 1 2 v2 C
MethodParameters:
Name Flags
v1
v2
private char composeTT(char, char);
descriptor: (CC)C
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/io/CharToByteCp949C;
0 1 1 t1 C
0 1 2 t2 C
MethodParameters:
Name Flags
t1
t2
private boolean isLeadingC(char);
descriptor: (C)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
sipush 4352
if_icmplt 1
iload 1
sipush 4441
if_icmpgt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/io/CharToByteCp949C;
0 2 1 c C
MethodParameters:
Name Flags
c
private boolean isVowel(char);
descriptor: (C)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
sipush 4449
if_icmplt 1
iload 1
sipush 4514
if_icmpgt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/io/CharToByteCp949C;
0 2 1 c C
MethodParameters:
Name Flags
c
private boolean isTrailingC(char);
descriptor: (C)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
sipush 4519
if_icmplt 1
iload 1
sipush 4601
if_icmpgt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/io/CharToByteCp949C;
0 2 1 c C
MethodParameters:
Name Flags
c
public int getMaxBytesPerChar();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_2
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/io/CharToByteCp949C;
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 "Cp949C"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/io/CharToByteCp949C;
private void bytesToBuffer(byte[], byte[], int);
descriptor: ([B[BI)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
iconst_0
baload
ifne 3
1: iconst_1
istore 4
start local 4 2: goto 4
end local 4 3: StackMap locals:
StackMap stack:
iconst_2
istore 4
start local 4 4: StackMap locals: int
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.byteOff:I
iload 4
iadd
iload 3
if_icmple 6
5: new sun.io.ConversionBufferFullException
dup
invokespecial sun.io.ConversionBufferFullException.<init>:()V
athrow
6: StackMap locals:
StackMap stack:
iload 4
iconst_1
if_icmpne 8
7: aload 2
aload 0
dup
getfield sun.io.CharToByteCp949C.byteOff:I
dup_x1
iconst_1
iadd
putfield sun.io.CharToByteCp949C.byteOff:I
aload 1
iconst_1
baload
bastore
goto 10
8: StackMap locals:
StackMap stack:
aload 2
aload 0
dup
getfield sun.io.CharToByteCp949C.byteOff:I
dup_x1
iconst_1
iadd
putfield sun.io.CharToByteCp949C.byteOff:I
aload 1
iconst_0
baload
bastore
9: aload 2
aload 0
dup
getfield sun.io.CharToByteCp949C.byteOff:I
dup_x1
iconst_1
iadd
putfield sun.io.CharToByteCp949C.byteOff:I
aload 1
iconst_1
baload
bastore
10: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/io/CharToByteCp949C;
0 11 1 theBytes [B
0 11 2 output [B
0 11 3 outEnd I
2 3 4 spaceNeeded I
4 11 4 spaceNeeded I
Exceptions:
throws sun.io.ConversionBufferFullException, sun.io.UnknownCharacterException
MethodParameters:
Name Flags
theBytes
output
outEnd
private void unicodeToBuffer(char, byte[], int);
descriptor: (C[BI)V
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: aload 0
getfield sun.io.CharToByteCp949C.index1:[S
iload 1
aload 0
getfield sun.io.CharToByteCp949C.mask1:I
iand
aload 0
getfield sun.io.CharToByteCp949C.shift:I
ishr
saload
iload 1
aload 0
getfield sun.io.CharToByteCp949C.mask2:I
iand
iadd
istore 4
start local 4 1: iload 4
sipush 15000
if_icmpge 4
2: aload 0
getfield sun.io.CharToByteCp949C.index2:Ljava/lang/String;
iload 4
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 3: goto 5
end local 5 4: StackMap locals: int
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.index2a:Ljava/lang/String;
iload 4
sipush 15000
isub
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 5: StackMap locals: int
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_0
iload 5
ldc 65280
iand
bipush 8
ishr
i2b
bastore
6: aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_1
iload 5
sipush 255
iand
i2b
bastore
7: aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_0
baload
ifne 19
aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_1
baload
ifne 19
8: iload 1
ifeq 19
9: aload 0
getfield sun.io.CharToByteCp949C.subMode:Z
ifeq 17
10: aload 0
getfield sun.io.CharToByteCp949C.subBytes:[B
arraylength
iconst_1
if_icmpne 14
11: aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_0
iconst_0
bastore
12: aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_1
aload 0
getfield sun.io.CharToByteCp949C.subBytes:[B
iconst_0
baload
bastore
13: goto 19
14: StackMap locals:
StackMap stack:
aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_0
aload 0
getfield sun.io.CharToByteCp949C.subBytes:[B
iconst_0
baload
bastore
15: aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
iconst_1
aload 0
getfield sun.io.CharToByteCp949C.subBytes:[B
iconst_1
baload
bastore
16: goto 19
17: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield sun.io.CharToByteCp949C.badInputLength:I
18: new sun.io.UnknownCharacterException
dup
invokespecial sun.io.UnknownCharacterException.<init>:()V
athrow
19: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.io.CharToByteCp949C.outputByte:[B
aload 2
iload 3
invokevirtual sun.io.CharToByteCp949C.bytesToBuffer:([B[BI)V
20: return
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 21 0 this Lsun/io/CharToByteCp949C;
0 21 1 unicode C
0 21 2 output [B
0 21 3 outEnd I
1 21 4 index I
3 4 5 theBytes I
5 21 5 theBytes I
Exceptions:
throws sun.io.ConversionBufferFullException, sun.io.UnknownCharacterException
MethodParameters:
Name Flags
unicode
output
outEnd
}
SourceFile: "CharToByteCp949C.java"