public final class sun.nio.cs.SingleByte$Decoder extends java.nio.charset.CharsetDecoder implements sun.nio.cs.ArrayDecoder
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.nio.cs.SingleByte$Decoder
  super_class: java.nio.charset.CharsetDecoder
{
  private final char[] b2c;
    descriptor: [C
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private char repl;
    descriptor: C
    flags: (0x0002) ACC_PRIVATE

  public void <init>(java.nio.charset.Charset, char[]);
    descriptor: (Ljava/nio/charset/Charset;[C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // sun.nio.cs.SingleByte$Decoder this
        start local 1 // java.nio.charset.Charset cs
        start local 2 // char[] b2c
         0: .line 54
            aload 0 /* this */
            aload 1 /* cs */
            fconst_1
            fconst_1
            invokespecial java.nio.charset.CharsetDecoder.<init>:(Ljava/nio/charset/Charset;FF)V
         1: .line 114
            aload 0 /* this */
            ldc 65533
            putfield sun.nio.cs.SingleByte$Decoder.repl:C
         2: .line 55
            aload 0 /* this */
            aload 2 /* b2c */
            putfield sun.nio.cs.SingleByte$Decoder.b2c:[C
         3: .line 56
            return
        end local 2 // char[] b2c
        end local 1 // java.nio.charset.Charset cs
        end local 0 // sun.nio.cs.SingleByte$Decoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/nio/cs/SingleByte$Decoder;
            0    4     1    cs  Ljava/nio/charset/Charset;
            0    4     2   b2c  [C
    MethodParameters:
      Name  Flags
      cs    
      b2c   

  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=5, locals=11, args_size=3
        start local 0 // sun.nio.cs.SingleByte$Decoder this
        start local 1 // java.nio.ByteBuffer src
        start local 2 // java.nio.CharBuffer dst
         0: .line 59
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.array:()[B
            astore 3 /* sa */
        start local 3 // byte[] sa
         1: .line 60
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.position:()I
            iadd
            istore 4 /* sp */
        start local 4 // int sp
         2: .line 61
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.limit:()I
            iadd
            istore 5 /* sl */
        start local 5 // int sl
         3: .line 63
            aload 2 /* dst */
            invokevirtual java.nio.CharBuffer.array:()[C
            astore 6 /* da */
        start local 6 // char[] da
         4: .line 64
            aload 2 /* dst */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            aload 2 /* dst */
            invokevirtual java.nio.CharBuffer.position:()I
            iadd
            istore 7 /* dp */
        start local 7 // int dp
         5: .line 65
            aload 2 /* dst */
            invokevirtual java.nio.CharBuffer.arrayOffset:()I
            aload 2 /* dst */
            invokevirtual java.nio.CharBuffer.limit:()I
            iadd
            istore 8 /* dl */
        start local 8 // int dl
         6: .line 67
            getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
            astore 9 /* cr */
        start local 9 // java.nio.charset.CoderResult cr
         7: .line 68
            iload 8 /* dl */
            iload 7 /* dp */
            isub
            iload 5 /* sl */
            iload 4 /* sp */
            isub
            if_icmpge 18
         8: .line 69
            iload 4 /* sp */
            iload 8 /* dl */
            iload 7 /* dp */
            isub
            iadd
            istore 5 /* sl */
         9: .line 70
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 9 /* cr */
        10: .line 73
            goto 18
        11: .line 74
      StackMap locals: sun.nio.cs.SingleByte$Decoder java.nio.ByteBuffer java.nio.CharBuffer byte[] int int char[] int int java.nio.charset.CoderResult
      StackMap stack:
            aload 0 /* this */
            aload 3 /* sa */
            iload 4 /* sp */
            baload
            invokevirtual sun.nio.cs.SingleByte$Decoder.decode:(I)C
            istore 10 /* c */
        start local 10 // char c
        12: .line 75
            iload 10 /* c */
            ldc 65533
            if_icmpne 16
        13: .line 76
            iconst_1
            invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
        14: .line 77
            aload 1 /* src */
            iload 4 /* sp */
            aload 2 /* dst */
            iload 7 /* dp */
        15: .line 76
            invokestatic sun.nio.cs.SingleByte.withResult:(Ljava/nio/charset/CoderResult;Ljava/nio/Buffer;ILjava/nio/Buffer;I)Ljava/nio/charset/CoderResult;
            areturn
        16: .line 79
      StackMap locals: int
      StackMap stack:
            aload 6 /* da */
            iload 7 /* dp */
            iinc 7 /* dp */ 1
            iload 10 /* c */
            castore
        17: .line 80
            iinc 4 /* sp */ 1
        end local 10 // char c
        18: .line 73
      StackMap locals:
      StackMap stack:
            iload 4 /* sp */
            iload 5 /* sl */
            if_icmplt 11
        19: .line 82
            aload 9 /* cr */
            aload 1 /* src */
            iload 4 /* sp */
            aload 2 /* dst */
            iload 7 /* dp */
            invokestatic sun.nio.cs.SingleByte.withResult:(Ljava/nio/charset/CoderResult;Ljava/nio/Buffer;ILjava/nio/Buffer;I)Ljava/nio/charset/CoderResult;
            areturn
        end local 9 // java.nio.charset.CoderResult cr
        end local 8 // int dl
        end local 7 // int dp
        end local 6 // char[] da
        end local 5 // int sl
        end local 4 // int sp
        end local 3 // byte[] sa
        end local 2 // java.nio.CharBuffer dst
        end local 1 // java.nio.ByteBuffer src
        end local 0 // sun.nio.cs.SingleByte$Decoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lsun/nio/cs/SingleByte$Decoder;
            0   20     1   src  Ljava/nio/ByteBuffer;
            0   20     2   dst  Ljava/nio/CharBuffer;
            1   20     3    sa  [B
            2   20     4    sp  I
            3   20     5    sl  I
            4   20     6    da  [C
            5   20     7    dp  I
            6   20     8    dl  I
            7   20     9    cr  Ljava/nio/charset/CoderResult;
           12   18    10     c  C
    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=2, locals=7, args_size=3
        start local 0 // sun.nio.cs.SingleByte$Decoder this
        start local 1 // java.nio.ByteBuffer src
        start local 2 // java.nio.CharBuffer dst
         0: .line 86
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 3 /* mark */
        start local 3 // int mark
         1: .line 88
            goto 13
         2: .line 89
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.get:()B
            invokevirtual sun.nio.cs.SingleByte$Decoder.decode:(I)C
            istore 4 /* c */
        start local 4 // char c
         3: .line 90
            iload 4 /* c */
            ldc 65533
            if_icmpne 7
         4: .line 91
            iconst_1
            invokestatic java.nio.charset.CoderResult.unmappableForLength:(I)Ljava/nio/charset/CoderResult;
            astore 6
         5: .line 99
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
         6: .line 91
            aload 6
            areturn
         7: .line 92
      StackMap locals: int
      StackMap stack:
            aload 2 /* dst */
            invokevirtual java.nio.CharBuffer.hasRemaining:()Z
            ifne 11
         8: .line 93
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 6
         9: .line 99
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        10: .line 93
            aload 6
            areturn
        11: .line 94
      StackMap locals:
      StackMap stack:
            aload 2 /* dst */
            iload 4 /* c */
            invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
            pop
        12: .line 95
            iinc 3 /* mark */ 1
        end local 4 // char c
        13: .line 88
      StackMap locals:
      StackMap stack:
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.hasRemaining:()Z
            ifne 2
        14: .line 97
            getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
            astore 6
        15: .line 99
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        16: .line 97
            aload 6
            areturn
        17: .line 98
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
        18: .line 99
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        19: .line 100
            aload 5
            athrow
        end local 3 // int mark
        end local 2 // java.nio.CharBuffer dst
        end local 1 // java.nio.ByteBuffer src
        end local 0 // sun.nio.cs.SingleByte$Decoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lsun/nio/cs/SingleByte$Decoder;
            0   20     1   src  Ljava/nio/ByteBuffer;
            0   20     2   dst  Ljava/nio/CharBuffer;
            1   20     3  mark  I
            3   13     4     c  C
      Exception table:
        from    to  target  type
           1     5      17  any
           7     9      17  any
          11    15      17  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 // sun.nio.cs.SingleByte$Decoder this
        start local 1 // java.nio.ByteBuffer src
        start local 2 // java.nio.CharBuffer dst
         0: .line 104
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.hasArray:()Z
            ifeq 2
            aload 2 /* dst */
            invokevirtual java.nio.CharBuffer.hasArray:()Z
            ifeq 2
         1: .line 105
            aload 0 /* this */
            aload 1 /* src */
            aload 2 /* dst */
            invokevirtual sun.nio.cs.SingleByte$Decoder.decodeArrayLoop:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
            areturn
         2: .line 107
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* src */
            aload 2 /* dst */
            invokevirtual sun.nio.cs.SingleByte$Decoder.decodeBufferLoop:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
            areturn
        end local 2 // java.nio.CharBuffer dst
        end local 1 // java.nio.ByteBuffer src
        end local 0 // sun.nio.cs.SingleByte$Decoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/nio/cs/SingleByte$Decoder;
            0    3     1   src  Ljava/nio/ByteBuffer;
            0    3     2   dst  Ljava/nio/CharBuffer;
    MethodParameters:
      Name  Flags
      src   
      dst   

  private final char decode(int);
    descriptor: (I)C
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.nio.cs.SingleByte$Decoder this
        start local 1 // int b
         0: .line 111
            aload 0 /* this */
            getfield sun.nio.cs.SingleByte$Decoder.b2c:[C
            iload 1 /* b */
            sipush 128
            iadd
            caload
            ireturn
        end local 1 // int b
        end local 0 // sun.nio.cs.SingleByte$Decoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/nio/cs/SingleByte$Decoder;
            0    1     1     b  I
    MethodParameters:
      Name  Flags
      b     

  protected void implReplaceWith(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.nio.cs.SingleByte$Decoder this
        start local 1 // java.lang.String newReplacement
         0: .line 116
            aload 0 /* this */
            aload 1 /* newReplacement */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            putfield sun.nio.cs.SingleByte$Decoder.repl:C
         1: .line 117
            return
        end local 1 // java.lang.String newReplacement
        end local 0 // sun.nio.cs.SingleByte$Decoder this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lsun/nio/cs/SingleByte$Decoder;
            0    2     1  newReplacement  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      newReplacement  

  public int decode(byte[], int, int, char[]);
    descriptor: ([BII[C)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // sun.nio.cs.SingleByte$Decoder this
        start local 1 // byte[] src
        start local 2 // int sp
        start local 3 // int len
        start local 4 // char[] dst
         0: .line 120
            iload 3 /* len */
            aload 4 /* dst */
            arraylength
            if_icmple 2
         1: .line 121
            aload 4 /* dst */
            arraylength
            istore 3 /* len */
         2: .line 122
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* dp */
        start local 5 // int dp
         3: .line 123
            goto 8
         4: .line 124
      StackMap locals: int
      StackMap stack:
            aload 4 /* dst */
            iload 5 /* dp */
            aload 0 /* this */
            aload 1 /* src */
            iload 2 /* sp */
            iinc 2 /* sp */ 1
            baload
            invokevirtual sun.nio.cs.SingleByte$Decoder.decode:(I)C
            castore
         5: .line 125
            aload 4 /* dst */
            iload 5 /* dp */
            caload
            ldc 65533
            if_icmpne 7
         6: .line 126
            aload 4 /* dst */
            iload 5 /* dp */
            aload 0 /* this */
            getfield sun.nio.cs.SingleByte$Decoder.repl:C
            castore
         7: .line 128
      StackMap locals:
      StackMap stack:
            iinc 5 /* dp */ 1
         8: .line 123
      StackMap locals:
      StackMap stack:
            iload 5 /* dp */
            iload 3 /* len */
            if_icmplt 4
         9: .line 130
            iload 5 /* dp */
            ireturn
        end local 5 // int dp
        end local 4 // char[] dst
        end local 3 // int len
        end local 2 // int sp
        end local 1 // byte[] src
        end local 0 // sun.nio.cs.SingleByte$Decoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lsun/nio/cs/SingleByte$Decoder;
            0   10     1   src  [B
            0   10     2    sp  I
            0   10     3   len  I
            0   10     4   dst  [C
            3   10     5    dp  I
    MethodParameters:
      Name  Flags
      src   
      sp    
      len   
      dst   
}
SourceFile: "SingleByte.java"
NestHost: sun.nio.cs.SingleByte
InnerClasses:
  public final Decoder = sun.nio.cs.SingleByte$Decoder of sun.nio.cs.SingleByte