class sun.nio.cs.ISO_8859_1$Encoder extends java.nio.charset.CharsetEncoder implements sun.nio.cs.ArrayEncoder
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.nio.cs.ISO_8859_1$Encoder
super_class: java.nio.charset.CharsetEncoder
{
private final sun.nio.cs.Surrogate$Parser sgp;
descriptor: Lsun/nio/cs/Surrogate$Parser;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private byte repl;
descriptor: B
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/ISO_8859_1;
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.ISO_8859_1$Encoder.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(java.nio.charset.Charset);
descriptor: (Ljava/nio/charset/Charset;)V
flags: (0x0002) ACC_PRIVATE
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.CharsetEncoder.<init>:(Ljava/nio/charset/Charset;FF)V
1: aload 0
new sun.nio.cs.Surrogate$Parser
dup
invokespecial sun.nio.cs.Surrogate$Parser.<init>:()V
putfield sun.nio.cs.ISO_8859_1$Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
2: aload 0
bipush 63
putfield sun.nio.cs.ISO_8859_1$Encoder.repl:B
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/nio/cs/ISO_8859_1$Encoder;
0 4 1 cs Ljava/nio/charset/Charset;
MethodParameters:
Name Flags
cs
public boolean canEncode(char);
descriptor: (C)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
sipush 255
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/nio/cs/ISO_8859_1$Encoder;
0 2 1 c C
MethodParameters:
Name Flags
c
public boolean isLegalReplacement(byte[]);
descriptor: ([B)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/cs/ISO_8859_1$Encoder;
0 1 1 repl [B
MethodParameters:
Name Flags
repl
private static int encodeISOArray(char[], int, byte[], int, int);
descriptor: ([CI[BII)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_0
istore 5
start local 5 1: goto 7
2: StackMap locals: int
StackMap stack:
aload 0
iload 1
iinc 1 1
caload
istore 6
start local 6 3: iload 6
sipush 255
if_icmple 5
4: goto 8
5: StackMap locals: int
StackMap stack:
aload 2
iload 3
iinc 3 1
iload 6
i2b
bastore
end local 6 6: iinc 5 1
StackMap locals:
StackMap stack:
7: iload 5
iload 4
if_icmplt 2
8: StackMap locals:
StackMap stack:
iload 5
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 9 0 sa [C
0 9 1 sp I
0 9 2 da [B
0 9 3 dp I
0 9 4 len I
1 9 5 i I
3 6 6 c C
MethodParameters:
Name Flags
sa
sp
da
dp
len
private java.nio.charset.CoderResult encodeArrayLoop(java.nio.CharBuffer, java.nio.ByteBuffer);
descriptor: (Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=17, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.nio.CharBuffer.array:()[C
astore 3
start local 3 1: aload 1
invokevirtual java.nio.CharBuffer.arrayOffset:()I
istore 4
start local 4 2: iload 4
aload 1
invokevirtual java.nio.CharBuffer.position:()I
iadd
istore 5
start local 5 3: iload 4
aload 1
invokevirtual java.nio.CharBuffer.limit:()I
iadd
istore 6
start local 6 4: getstatic sun.nio.cs.ISO_8859_1$Encoder.$assertionsDisabled:Z
ifne 5
iload 5
iload 6
if_icmple 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals: sun.nio.cs.ISO_8859_1$Encoder java.nio.CharBuffer java.nio.ByteBuffer char[] int int int
StackMap stack:
iload 5
iload 6
if_icmpgt 6
iload 5
goto 7
StackMap locals:
StackMap stack:
6: iload 6
StackMap locals:
StackMap stack: int
7: istore 5
8: aload 2
invokevirtual java.nio.ByteBuffer.array:()[B
astore 7
start local 7 9: aload 2
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
istore 8
start local 8 10: iload 8
aload 2
invokevirtual java.nio.ByteBuffer.position:()I
iadd
istore 9
start local 9 11: iload 8
aload 2
invokevirtual java.nio.ByteBuffer.limit:()I
iadd
istore 10
start local 10 12: getstatic sun.nio.cs.ISO_8859_1$Encoder.$assertionsDisabled:Z
ifne 13
iload 9
iload 10
if_icmple 13
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
13: StackMap locals: sun.nio.cs.ISO_8859_1$Encoder java.nio.CharBuffer java.nio.ByteBuffer char[] int int int byte[] int int int
StackMap stack:
iload 9
iload 10
if_icmpgt 14
iload 9
goto 15
StackMap locals:
StackMap stack:
14: iload 10
StackMap locals:
StackMap stack: int
15: istore 9
16: iload 10
iload 9
isub
istore 11
start local 11 17: iload 6
iload 5
isub
istore 12
start local 12 18: iload 11
iload 12
if_icmpge 19
iload 11
goto 20
StackMap locals: int int
StackMap stack:
19: iload 12
StackMap locals:
StackMap stack: int
20: istore 13
start local 13 21: iload 13
ifgt 22
iconst_0
goto 23
StackMap locals: int
StackMap stack:
22: aload 3
iload 5
aload 7
iload 9
iload 13
invokestatic sun.nio.cs.ISO_8859_1$Encoder.encodeISOArray:([CI[BII)I
StackMap locals:
StackMap stack: int
23: istore 14
start local 14 24: iload 5
iload 14
iadd
istore 5
25: iload 9
iload 14
iadd
istore 9
26: iload 14
iload 13
if_icmpeq 36
27: aload 0
getfield sun.nio.cs.ISO_8859_1$Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
aload 3
iload 5
caload
aload 3
iload 5
iload 6
invokevirtual sun.nio.cs.Surrogate$Parser.parse:(C[CII)I
ifge 32
28: aload 0
getfield sun.nio.cs.ISO_8859_1$Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
invokevirtual sun.nio.cs.Surrogate$Parser.error:()Ljava/nio/charset/CoderResult;
astore 16
29: aload 1
iload 5
iload 4
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
30: aload 2
iload 9
iload 8
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
31: aload 16
areturn
32: StackMap locals: int
StackMap stack:
aload 0
getfield sun.nio.cs.ISO_8859_1$Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
invokevirtual sun.nio.cs.Surrogate$Parser.unmappableResult:()Ljava/nio/charset/CoderResult;
astore 16
33: aload 1
iload 5
iload 4
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
34: aload 2
iload 9
iload 8
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
35: aload 16
areturn
36: StackMap locals:
StackMap stack:
iload 13
iload 12
if_icmpge 41
37: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 16
38: aload 1
iload 5
iload 4
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
39: aload 2
iload 9
iload 8
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
40: aload 16
areturn
41: StackMap locals:
StackMap stack:
getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 16
42: aload 1
iload 5
iload 4
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
43: aload 2
iload 9
iload 8
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
44: aload 16
areturn
end local 14 45: StackMap locals: sun.nio.cs.ISO_8859_1$Encoder java.nio.CharBuffer java.nio.ByteBuffer char[] int int int byte[] int int int int int int
StackMap stack: java.lang.Throwable
astore 15
46: aload 1
iload 5
iload 4
isub
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
47: aload 2
iload 9
iload 8
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
48: aload 15
athrow
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 49 0 this Lsun/nio/cs/ISO_8859_1$Encoder;
0 49 1 src Ljava/nio/CharBuffer;
0 49 2 dst Ljava/nio/ByteBuffer;
1 49 3 sa [C
2 49 4 soff I
3 49 5 sp I
4 49 6 sl I
9 49 7 da [B
10 49 8 doff I
11 49 9 dp I
12 49 10 dl I
17 49 11 dlen I
18 49 12 slen I
21 49 13 len I
24 45 14 ret I
Exception table:
from to target type
21 29 45 any
32 33 45 any
36 38 45 any
41 42 45 any
MethodParameters:
Name Flags
src
dst
private java.nio.charset.CoderResult encodeBufferLoop(java.nio.CharBuffer, java.nio.ByteBuffer);
descriptor: (Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.nio.CharBuffer.position:()I
istore 3
start local 3 1: goto 18
2: StackMap locals: int
StackMap stack:
aload 1
invokevirtual java.nio.CharBuffer.get:()C
istore 4
start local 4 3: iload 4
sipush 255
if_icmpgt 11
4: aload 2
invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
ifne 8
5: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
astore 6
6: aload 1
iload 3
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
7: aload 6
areturn
8: StackMap locals: int
StackMap stack:
aload 2
iload 4
i2b
invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
pop
9: iinc 3 1
10: goto 18
11: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ISO_8859_1$Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
iload 4
aload 1
invokevirtual sun.nio.cs.Surrogate$Parser.parse:(CLjava/nio/CharBuffer;)I
ifge 15
12: aload 0
getfield sun.nio.cs.ISO_8859_1$Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
invokevirtual sun.nio.cs.Surrogate$Parser.error:()Ljava/nio/charset/CoderResult;
astore 6
13: aload 1
iload 3
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
14: aload 6
areturn
15: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.cs.ISO_8859_1$Encoder.sgp:Lsun/nio/cs/Surrogate$Parser;
invokevirtual sun.nio.cs.Surrogate$Parser.unmappableResult:()Ljava/nio/charset/CoderResult;
astore 6
16: aload 1
iload 3
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
17: aload 6
areturn
end local 4 18: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.CharBuffer.hasRemaining:()Z
ifne 2
19: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
astore 6
20: aload 1
iload 3
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
21: aload 6
areturn
22: StackMap locals:
StackMap stack: java.lang.Throwable
astore 5
23: aload 1
iload 3
invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/Buffer;
pop
24: aload 5
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lsun/nio/cs/ISO_8859_1$Encoder;
0 25 1 src Ljava/nio/CharBuffer;
0 25 2 dst Ljava/nio/ByteBuffer;
1 25 3 mark I
3 18 4 c C
Exception table:
from to target type
1 6 22 any
8 13 22 any
15 16 22 any
18 20 22 any
MethodParameters:
Name Flags
src
dst
protected java.nio.charset.CoderResult encodeLoop(java.nio.CharBuffer, java.nio.ByteBuffer);
descriptor: (Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)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.CharBuffer.hasArray:()Z
ifeq 2
aload 2
invokevirtual java.nio.ByteBuffer.hasArray:()Z
ifeq 2
1: aload 0
aload 1
aload 2
invokevirtual sun.nio.cs.ISO_8859_1$Encoder.encodeArrayLoop:(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)Ljava/nio/charset/CoderResult;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual sun.nio.cs.ISO_8859_1$Encoder.encodeBufferLoop:(Ljava/nio/CharBuffer;Ljava/nio/ByteBuffer;)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/ISO_8859_1$Encoder;
0 3 1 src Ljava/nio/CharBuffer;
0 3 2 dst Ljava/nio/ByteBuffer;
MethodParameters:
Name Flags
src
dst
protected void implReplaceWith(byte[]);
descriptor: ([B)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
baload
putfield sun.nio.cs.ISO_8859_1$Encoder.repl:B
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/nio/cs/ISO_8859_1$Encoder;
0 2 1 newReplacement [B
MethodParameters:
Name Flags
newReplacement
public int encode(char[], int, int, byte[]);
descriptor: ([CII[B)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_0
istore 5
start local 5 1: iload 3
aload 4
arraylength
invokestatic java.lang.Math.min:(II)I
istore 6
start local 6 2: iload 2
iload 6
iadd
istore 7
start local 7 3: goto 19
4: StackMap locals: int int int
StackMap stack:
iload 6
ifgt 5
iconst_0
goto 6
StackMap locals:
StackMap stack:
5: aload 1
iload 2
aload 4
iload 5
iload 6
invokestatic sun.nio.cs.ISO_8859_1$Encoder.encodeISOArray:([CI[BII)I
6: StackMap locals:
StackMap stack: int
istore 8
start local 8 7: iload 2
iload 8
iadd
istore 2
8: iload 5
iload 8
iadd
istore 5
9: iload 8
iload 6
if_icmpeq 19
10: aload 1
iload 2
iinc 2 1
caload
istore 9
start local 9 11: iload 9
invokestatic java.lang.Character.isHighSurrogate:(C)Z
ifeq 17
iload 2
iload 7
if_icmpge 17
12: aload 1
iload 2
caload
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 17
13: iload 3
aload 4
arraylength
if_icmple 16
14: iinc 7 1
15: iinc 3 -1
16: StackMap locals: int int
StackMap stack:
iinc 2 1
17: StackMap locals:
StackMap stack:
aload 4
iload 5
iinc 5 1
aload 0
getfield sun.nio.cs.ISO_8859_1$Encoder.repl:B
bastore
18: iload 7
iload 2
isub
aload 4
arraylength
iload 5
isub
invokestatic java.lang.Math.min:(II)I
istore 6
end local 9 end local 8 19: StackMap locals:
StackMap stack:
iload 2
iload 7
if_icmplt 4
20: iload 5
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 21 0 this Lsun/nio/cs/ISO_8859_1$Encoder;
0 21 1 src [C
0 21 2 sp I
0 21 3 len I
0 21 4 dst [B
1 21 5 dp I
2 21 6 slen I
3 21 7 sl I
7 19 8 ret I
11 19 9 c C
MethodParameters:
Name Flags
src
sp
len
dst
}
SourceFile: "ISO_8859_1.java"
NestHost: sun.nio.cs.ISO_8859_1
InnerClasses:
private Encoder = sun.nio.cs.ISO_8859_1$Encoder of sun.nio.cs.ISO_8859_1
public Parser = sun.nio.cs.Surrogate$Parser of sun.nio.cs.Surrogate