public class sun.nio.cs.UTF_32Coder$Encoder extends java.nio.charset.CharsetEncoder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.nio.cs.UTF_32Coder$Encoder
  super_class: java.nio.charset.CharsetEncoder
{
  private boolean doBOM;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean doneBOM;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int byteOrder;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  protected void put(int, java.nio.ByteBuffer);
    descriptor: (ILjava/nio/ByteBuffer;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.nio.cs.UTF_32Coder$Encoder this
        start local 1 // int cp
        start local 2 // java.nio.ByteBuffer dst
         0: .line 122
            aload 0 /* this */
            getfield sun.nio.cs.UTF_32Coder$Encoder.byteOrder:I
            iconst_1
            if_icmpne 6
         1: .line 123
            aload 2 /* dst */
            iload 1 /* cp */
            bipush 24
            ishr
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         2: .line 124
            aload 2 /* dst */
            iload 1 /* cp */
            bipush 16
            ishr
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         3: .line 125
            aload 2 /* dst */
            iload 1 /* cp */
            bipush 8
            ishr
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         4: .line 126
            aload 2 /* dst */
            iload 1 /* cp */
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         5: .line 127
            goto 10
         6: .line 128
      StackMap locals:
      StackMap stack:
            aload 2 /* dst */
            iload 1 /* cp */
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         7: .line 129
            aload 2 /* dst */
            iload 1 /* cp */
            bipush 8
            ishr
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         8: .line 130
            aload 2 /* dst */
            iload 1 /* cp */
            bipush 16
            ishr
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         9: .line 131
            aload 2 /* dst */
            iload 1 /* cp */
            bipush 24
            ishr
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        10: .line 133
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.nio.ByteBuffer dst
        end local 1 // int cp
        end local 0 // sun.nio.cs.UTF_32Coder$Encoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/nio/cs/UTF_32Coder$Encoder;
            0   11     1    cp  I
            0   11     2   dst  Ljava/nio/ByteBuffer;
    MethodParameters:
      Name  Flags
      cp    
      dst   

  protected void <init>(java.nio.charset.Charset, int, boolean);
    descriptor: (Ljava/nio/charset/Charset;IZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // sun.nio.cs.UTF_32Coder$Encoder this
        start local 1 // java.nio.charset.Charset cs
        start local 2 // int byteOrder
        start local 3 // boolean doBOM
         0: .line 136
            aload 0 /* this */
            aload 1 /* cs */
            ldc 4.0
         1: .line 137
            iload 3 /* doBOM */
            ifeq 2
            ldc 8.0
            goto 3
      StackMap locals: uninitialized-this java.nio.charset.Charset int int
      StackMap stack: uninitialized-this java.nio.charset.Charset float
         2: ldc 4.0
         3: .line 138
      StackMap locals: uninitialized-this java.nio.charset.Charset int int
      StackMap stack: uninitialized-this java.nio.charset.Charset float float
            iload 2 /* byteOrder */
            iconst_1
            if_icmpne 4
            iconst_4
            newarray 8
            dup
            iconst_2
            iconst_m1
            bastore
            dup
            iconst_3
            bipush -3
            bastore
            goto 5
         4: .line 139
      StackMap locals: uninitialized-this java.nio.charset.Charset int int
      StackMap stack: uninitialized-this java.nio.charset.Charset float float
            iconst_4
            newarray 8
            dup
            iconst_0
            bipush -3
            bastore
            dup
            iconst_1
            iconst_m1
            bastore
      StackMap locals: uninitialized-this java.nio.charset.Charset int int
      StackMap stack: uninitialized-this java.nio.charset.Charset float float byte[]
         5: invokespecial java.nio.charset.CharsetEncoder.<init>:(Ljava/nio/charset/Charset;FF[B)V
         6: .line 117
            aload 0 /* this */
            iconst_0
            putfield sun.nio.cs.UTF_32Coder$Encoder.doBOM:Z
         7: .line 118
            aload 0 /* this */
            iconst_1
            putfield sun.nio.cs.UTF_32Coder$Encoder.doneBOM:Z
         8: .line 140
            aload 0 /* this */
            iload 2 /* byteOrder */
            putfield sun.nio.cs.UTF_32Coder$Encoder.byteOrder:I
         9: .line 141
            aload 0 /* this */
            iload 3 /* doBOM */
            putfield sun.nio.cs.UTF_32Coder$Encoder.doBOM:Z
        10: .line 142
            aload 0 /* this */
            iload 3 /* doBOM */
            ifeq 11
            iconst_0
            goto 12
      StackMap locals: sun.nio.cs.UTF_32Coder$Encoder java.nio.charset.Charset int int
      StackMap stack: sun.nio.cs.UTF_32Coder$Encoder
        11: iconst_1
      StackMap locals: sun.nio.cs.UTF_32Coder$Encoder java.nio.charset.Charset int int
      StackMap stack: sun.nio.cs.UTF_32Coder$Encoder int
        12: putfield sun.nio.cs.UTF_32Coder$Encoder.doneBOM:Z
        13: .line 143
            return
        end local 3 // boolean doBOM
        end local 2 // int byteOrder
        end local 1 // java.nio.charset.Charset cs
        end local 0 // sun.nio.cs.UTF_32Coder$Encoder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0       this  Lsun/nio/cs/UTF_32Coder$Encoder;
            0   14     1         cs  Ljava/nio/charset/Charset;
            0   14     2  byteOrder  I
            0   14     3      doBOM  Z
    MethodParameters:
           Name  Flags
      cs         
      byteOrder  
      doBOM      

  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=8, args_size=3
        start local 0 // sun.nio.cs.UTF_32Coder$Encoder this
        start local 1 // java.nio.CharBuffer src
        start local 2 // java.nio.ByteBuffer dst
         0: .line 146
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.position:()I
            istore 3 /* mark */
        start local 3 // int mark
         1: .line 147
            aload 0 /* this */
            getfield sun.nio.cs.UTF_32Coder$Encoder.doneBOM:Z
            ifne 36
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.hasRemaining:()Z
            ifeq 36
         2: .line 148
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iconst_4
            if_icmpge 4
         3: .line 149
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            areturn
         4: .line 150
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            ldc 65279
            aload 2 /* dst */
            invokevirtual sun.nio.cs.UTF_32Coder$Encoder.put:(ILjava/nio/ByteBuffer;)V
         5: .line 151
            aload 0 /* this */
            iconst_1
            putfield sun.nio.cs.UTF_32Coder$Encoder.doneBOM:Z
         6: .line 154
            goto 36
         7: .line 155
      StackMap locals:
      StackMap stack:
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.get:()C
            istore 4 /* c */
        start local 4 // char c
         8: .line 156
            iload 4 /* c */
            invokestatic java.lang.Character.isSurrogate:(C)Z
            ifne 16
         9: .line 157
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iconst_4
            if_icmpge 13
        10: .line 158
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 7
        11: .line 180
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/CharBuffer;
            pop
        12: .line 158
            aload 7
            areturn
        13: .line 159
      StackMap locals: int
      StackMap stack:
            iinc 3 /* mark */ 1
        14: .line 160
            aload 0 /* this */
            iload 4 /* c */
            aload 2 /* dst */
            invokevirtual sun.nio.cs.UTF_32Coder$Encoder.put:(ILjava/nio/ByteBuffer;)V
        15: .line 161
            goto 36
      StackMap locals:
      StackMap stack:
        16: iload 4 /* c */
            invokestatic java.lang.Character.isHighSurrogate:(C)Z
            ifeq 33
        17: .line 162
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.hasRemaining:()Z
            ifne 21
        18: .line 163
            getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
            astore 7
        19: .line 180
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/CharBuffer;
            pop
        20: .line 163
            aload 7
            areturn
        21: .line 164
      StackMap locals:
      StackMap stack:
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.get:()C
            istore 5 /* low */
        start local 5 // char low
        22: .line 165
            iload 5 /* low */
            invokestatic java.lang.Character.isLowSurrogate:(C)Z
            ifeq 30
        23: .line 166
            aload 2 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iconst_4
            if_icmpge 27
        24: .line 167
            getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
            astore 7
        25: .line 180
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/CharBuffer;
            pop
        26: .line 167
            aload 7
            areturn
        27: .line 168
      StackMap locals: int
      StackMap stack:
            iinc 3 /* mark */ 2
        28: .line 169
            aload 0 /* this */
            iload 4 /* c */
            iload 5 /* low */
            invokestatic java.lang.Character.toCodePoint:(CC)I
            aload 2 /* dst */
            invokevirtual sun.nio.cs.UTF_32Coder$Encoder.put:(ILjava/nio/ByteBuffer;)V
        29: .line 170
            goto 36
        30: .line 171
      StackMap locals:
      StackMap stack:
            iconst_1
            invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
            astore 7
        31: .line 180
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/CharBuffer;
            pop
        32: .line 171
            aload 7
            areturn
        end local 5 // char low
        33: .line 175
      StackMap locals:
      StackMap stack:
            iconst_1
            invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
            astore 7
        34: .line 180
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/CharBuffer;
            pop
        35: .line 175
            aload 7
            areturn
        end local 4 // char c
        36: .line 154
      StackMap locals:
      StackMap stack:
            aload 1 /* src */
            invokevirtual java.nio.CharBuffer.hasRemaining:()Z
            ifne 7
        37: .line 178
            getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
            astore 7
        38: .line 180
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/CharBuffer;
            pop
        39: .line 178
            aload 7
            areturn
        40: .line 179
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6
        41: .line 180
            aload 1 /* src */
            iload 3 /* mark */
            invokevirtual java.nio.CharBuffer.position:(I)Ljava/nio/CharBuffer;
            pop
        42: .line 181
            aload 6
            athrow
        end local 3 // int mark
        end local 2 // java.nio.ByteBuffer dst
        end local 1 // java.nio.CharBuffer src
        end local 0 // sun.nio.cs.UTF_32Coder$Encoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   43     0  this  Lsun/nio/cs/UTF_32Coder$Encoder;
            0   43     1   src  Ljava/nio/CharBuffer;
            0   43     2   dst  Ljava/nio/ByteBuffer;
            1   43     3  mark  I
            8   36     4     c  C
           22   33     5   low  C
      Exception table:
        from    to  target  type
           6    11      40  any
          13    19      40  any
          21    25      40  any
          27    31      40  any
          33    34      40  any
          36    38      40  any
    MethodParameters:
      Name  Flags
      src   
      dst   

  protected void implReset();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.nio.cs.UTF_32Coder$Encoder this
         0: .line 185
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.nio.cs.UTF_32Coder$Encoder.doBOM:Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack: sun.nio.cs.UTF_32Coder$Encoder
         1: iconst_1
      StackMap locals: sun.nio.cs.UTF_32Coder$Encoder
      StackMap stack: sun.nio.cs.UTF_32Coder$Encoder int
         2: putfield sun.nio.cs.UTF_32Coder$Encoder.doneBOM:Z
         3: .line 186
            return
        end local 0 // sun.nio.cs.UTF_32Coder$Encoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/nio/cs/UTF_32Coder$Encoder;
}
SourceFile: "UTF_32Coder.java"
NestHost: sun.nio.cs.UTF_32Coder
InnerClasses:
  protected Encoder = sun.nio.cs.UTF_32Coder$Encoder of sun.nio.cs.UTF_32Coder