final class io.netty.handler.codec.compression.Bzip2BitWriter
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: io.netty.handler.codec.compression.Bzip2BitWriter
  super_class: java.lang.Object
{
  private long bitBuffer;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

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

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
         0: .line 25
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/netty/handler/codec/compression/Bzip2BitWriter;

  void writeBits(io.netty.buffer.ByteBuf, int, long);
    descriptor: (Lio/netty/buffer/ByteBuf;IJ)V
    flags: (0x0000) 
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
        start local 1 // io.netty.buffer.ByteBuf out
        start local 2 // int count
        start local 3 // long value
         0: .line 42
            iload 2 /* count */
            iflt 1
            iload 2 /* count */
            bipush 32
            if_icmple 2
         1: .line 43
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "count: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* count */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " (expected: 0-32)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 45
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.compression.Bzip2BitWriter.bitCount:I
            istore 5 /* bitCount */
        start local 5 // int bitCount
         3: .line 46
            aload 0 /* this */
            getfield io.netty.handler.codec.compression.Bzip2BitWriter.bitBuffer:J
            lload 3 /* value */
            bipush 64
            iload 2 /* count */
            isub
            lshl
            iload 5 /* bitCount */
            lushr
            lor
            lstore 6 /* bitBuffer */
        start local 6 // long bitBuffer
         4: .line 47
            iload 5 /* bitCount */
            iload 2 /* count */
            iadd
            istore 5 /* bitCount */
         5: .line 49
            iload 5 /* bitCount */
            bipush 32
            if_icmplt 9
         6: .line 50
            aload 1 /* out */
            lload 6 /* bitBuffer */
            bipush 32
            lushr
            l2i
            invokevirtual io.netty.buffer.ByteBuf.writeInt:(I)Lio/netty/buffer/ByteBuf;
            pop
         7: .line 51
            lload 6 /* bitBuffer */
            bipush 32
            lshl
            lstore 6 /* bitBuffer */
         8: .line 52
            iinc 5 /* bitCount */ -32
         9: .line 54
      StackMap locals: int long
      StackMap stack:
            aload 0 /* this */
            lload 6 /* bitBuffer */
            putfield io.netty.handler.codec.compression.Bzip2BitWriter.bitBuffer:J
        10: .line 55
            aload 0 /* this */
            iload 5 /* bitCount */
            putfield io.netty.handler.codec.compression.Bzip2BitWriter.bitCount:I
        11: .line 56
            return
        end local 6 // long bitBuffer
        end local 5 // int bitCount
        end local 3 // long value
        end local 2 // int count
        end local 1 // io.netty.buffer.ByteBuf out
        end local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lio/netty/handler/codec/compression/Bzip2BitWriter;
            0   12     1        out  Lio/netty/buffer/ByteBuf;
            0   12     2      count  I
            0   12     3      value  J
            3   12     5   bitCount  I
            4   12     6  bitBuffer  J
    MethodParameters:
       Name  Flags
      out    
      count  final
      value  final

  void writeBoolean(io.netty.buffer.ByteBuf, boolean);
    descriptor: (Lio/netty/buffer/ByteBuf;Z)V
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
        start local 1 // io.netty.buffer.ByteBuf out
        start local 2 // boolean value
         0: .line 63
            aload 0 /* this */
            getfield io.netty.handler.codec.compression.Bzip2BitWriter.bitCount:I
            iconst_1
            iadd
            istore 3 /* bitCount */
        start local 3 // int bitCount
         1: .line 64
            aload 0 /* this */
            getfield io.netty.handler.codec.compression.Bzip2BitWriter.bitBuffer:J
            iload 2 /* value */
            ifeq 2
            lconst_1
            bipush 64
            iload 3 /* bitCount */
            isub
            lshl
            goto 3
      StackMap locals: io.netty.handler.codec.compression.Bzip2BitWriter io.netty.buffer.ByteBuf int int
      StackMap stack: long
         2: lconst_0
      StackMap locals: io.netty.handler.codec.compression.Bzip2BitWriter io.netty.buffer.ByteBuf int int
      StackMap stack: long long
         3: lor
            lstore 4 /* bitBuffer */
        start local 4 // long bitBuffer
         4: .line 66
            iload 3 /* bitCount */
            bipush 32
            if_icmpne 8
         5: .line 67
            aload 1 /* out */
            lload 4 /* bitBuffer */
            bipush 32
            lushr
            l2i
            invokevirtual io.netty.buffer.ByteBuf.writeInt:(I)Lio/netty/buffer/ByteBuf;
            pop
         6: .line 68
            lconst_0
            lstore 4 /* bitBuffer */
         7: .line 69
            iconst_0
            istore 3 /* bitCount */
         8: .line 71
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            lload 4 /* bitBuffer */
            putfield io.netty.handler.codec.compression.Bzip2BitWriter.bitBuffer:J
         9: .line 72
            aload 0 /* this */
            iload 3 /* bitCount */
            putfield io.netty.handler.codec.compression.Bzip2BitWriter.bitCount:I
        10: .line 73
            return
        end local 4 // long bitBuffer
        end local 3 // int bitCount
        end local 2 // boolean value
        end local 1 // io.netty.buffer.ByteBuf out
        end local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lio/netty/handler/codec/compression/Bzip2BitWriter;
            0   11     1        out  Lio/netty/buffer/ByteBuf;
            0   11     2      value  Z
            1   11     3   bitCount  I
            4   11     4  bitBuffer  J
    MethodParameters:
       Name  Flags
      out    
      value  final

  void writeUnary(io.netty.buffer.ByteBuf, int);
    descriptor: (Lio/netty/buffer/ByteBuf;I)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
        start local 1 // io.netty.buffer.ByteBuf out
        start local 2 // int value
         0: .line 81
            iload 2 /* value */
            ifge 3
         1: .line 82
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "value: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* value */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " (expected 0 or more)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 85
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* out */
            iconst_1
            invokevirtual io.netty.handler.codec.compression.Bzip2BitWriter.writeBoolean:(Lio/netty/buffer/ByteBuf;Z)V
         3: .line 84
      StackMap locals:
      StackMap stack:
            iload 2 /* value */
            iinc 2 /* value */ -1
            ifgt 2
         4: .line 87
            aload 0 /* this */
            aload 1 /* out */
            iconst_0
            invokevirtual io.netty.handler.codec.compression.Bzip2BitWriter.writeBoolean:(Lio/netty/buffer/ByteBuf;Z)V
         5: .line 88
            return
        end local 2 // int value
        end local 1 // io.netty.buffer.ByteBuf out
        end local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lio/netty/handler/codec/compression/Bzip2BitWriter;
            0    6     1    out  Lio/netty/buffer/ByteBuf;
            0    6     2  value  I
    MethodParameters:
       Name  Flags
      out    
      value  

  void writeInt(io.netty.buffer.ByteBuf, int);
    descriptor: (Lio/netty/buffer/ByteBuf;I)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
        start local 1 // io.netty.buffer.ByteBuf out
        start local 2 // int value
         0: .line 95
            aload 0 /* this */
            aload 1 /* out */
            bipush 32
            iload 2 /* value */
            i2l
            invokevirtual io.netty.handler.codec.compression.Bzip2BitWriter.writeBits:(Lio/netty/buffer/ByteBuf;IJ)V
         1: .line 96
            return
        end local 2 // int value
        end local 1 // io.netty.buffer.ByteBuf out
        end local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lio/netty/handler/codec/compression/Bzip2BitWriter;
            0    2     1    out  Lio/netty/buffer/ByteBuf;
            0    2     2  value  I
    MethodParameters:
       Name  Flags
      out    
      value  final

  void flush(io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/buffer/ByteBuf;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
        start local 1 // io.netty.buffer.ByteBuf out
         0: .line 103
            aload 0 /* this */
            getfield io.netty.handler.codec.compression.Bzip2BitWriter.bitCount:I
            istore 2 /* bitCount */
        start local 2 // int bitCount
         1: .line 105
            iload 2 /* bitCount */
            ifle 14
         2: .line 106
            aload 0 /* this */
            getfield io.netty.handler.codec.compression.Bzip2BitWriter.bitBuffer:J
            lstore 3 /* bitBuffer */
        start local 3 // long bitBuffer
         3: .line 107
            bipush 64
            iload 2 /* bitCount */
            isub
            istore 5 /* shiftToRight */
        start local 5 // int shiftToRight
         4: .line 109
            iload 2 /* bitCount */
            bipush 8
            if_icmpgt 7
         5: .line 110
            aload 1 /* out */
            lload 3 /* bitBuffer */
            iload 5 /* shiftToRight */
            lushr
            bipush 8
            iload 2 /* bitCount */
            isub
            lshl
            l2i
            invokevirtual io.netty.buffer.ByteBuf.writeByte:(I)Lio/netty/buffer/ByteBuf;
            pop
         6: .line 111
            goto 14
      StackMap locals: int long int
      StackMap stack:
         7: iload 2 /* bitCount */
            bipush 16
            if_icmpgt 10
         8: .line 112
            aload 1 /* out */
            lload 3 /* bitBuffer */
            iload 5 /* shiftToRight */
            lushr
            bipush 16
            iload 2 /* bitCount */
            isub
            lshl
            l2i
            invokevirtual io.netty.buffer.ByteBuf.writeShort:(I)Lio/netty/buffer/ByteBuf;
            pop
         9: .line 113
            goto 14
      StackMap locals:
      StackMap stack:
        10: iload 2 /* bitCount */
            bipush 24
            if_icmpgt 13
        11: .line 114
            aload 1 /* out */
            lload 3 /* bitBuffer */
            iload 5 /* shiftToRight */
            lushr
            bipush 24
            iload 2 /* bitCount */
            isub
            lshl
            l2i
            invokevirtual io.netty.buffer.ByteBuf.writeMedium:(I)Lio/netty/buffer/ByteBuf;
            pop
        12: .line 115
            goto 14
        13: .line 116
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            lload 3 /* bitBuffer */
            iload 5 /* shiftToRight */
            lushr
            bipush 32
            iload 2 /* bitCount */
            isub
            lshl
            l2i
            invokevirtual io.netty.buffer.ByteBuf.writeInt:(I)Lio/netty/buffer/ByteBuf;
            pop
        end local 5 // int shiftToRight
        end local 3 // long bitBuffer
        14: .line 119
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int bitCount
        end local 1 // io.netty.buffer.ByteBuf out
        end local 0 // io.netty.handler.codec.compression.Bzip2BitWriter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Lio/netty/handler/codec/compression/Bzip2BitWriter;
            0   15     1           out  Lio/netty/buffer/ByteBuf;
            1   15     2      bitCount  I
            3   14     3     bitBuffer  J
            4   14     5  shiftToRight  I
    MethodParameters:
      Name  Flags
      out   
}
SourceFile: "Bzip2BitWriter.java"