public class org.apache.cassandra.transport.Frame
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.transport.Frame
  super_class: java.lang.Object
{
  public static final byte PROTOCOL_VERSION_MASK;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 127

  public final org.apache.cassandra.transport.Frame$Header header;
    descriptor: Lorg/apache/cassandra/transport/Frame$Header;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final io.netty.buffer.ByteBuf body;
    descriptor: Lio/netty/buffer/ByteBuf;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  private void <init>(org.apache.cassandra.transport.Frame$Header, io.netty.buffer.ByteBuf);
    descriptor: (Lorg/apache/cassandra/transport/Frame$Header;Lio/netty/buffer/ByteBuf;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.cassandra.transport.Frame this
        start local 1 // org.apache.cassandra.transport.Frame$Header header
        start local 2 // io.netty.buffer.ByteBuf body
         0: .line 54
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 56
            aload 0 /* this */
            aload 1 /* header */
            putfield org.apache.cassandra.transport.Frame.header:Lorg/apache/cassandra/transport/Frame$Header;
         2: .line 57
            aload 0 /* this */
            aload 2 /* body */
            putfield org.apache.cassandra.transport.Frame.body:Lio/netty/buffer/ByteBuf;
         3: .line 58
            return
        end local 2 // io.netty.buffer.ByteBuf body
        end local 1 // org.apache.cassandra.transport.Frame$Header header
        end local 0 // org.apache.cassandra.transport.Frame this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/apache/cassandra/transport/Frame;
            0    4     1  header  Lorg/apache/cassandra/transport/Frame$Header;
            0    4     2    body  Lio/netty/buffer/ByteBuf;
    MethodParameters:
        Name  Flags
      header  
      body    

  public void retain();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.transport.Frame this
         0: .line 62
            aload 0 /* this */
            getfield org.apache.cassandra.transport.Frame.body:Lio/netty/buffer/ByteBuf;
            invokevirtual io.netty.buffer.ByteBuf.retain:()Lio/netty/buffer/ByteBuf;
            pop
         1: .line 63
            return
        end local 0 // org.apache.cassandra.transport.Frame this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/transport/Frame;

  public boolean release();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.transport.Frame this
         0: .line 67
            aload 0 /* this */
            getfield org.apache.cassandra.transport.Frame.body:Lio/netty/buffer/ByteBuf;
            invokevirtual io.netty.buffer.ByteBuf.release:()Z
            ireturn
        end local 0 // org.apache.cassandra.transport.Frame this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/transport/Frame;

  public static org.apache.cassandra.transport.Frame create(org.apache.cassandra.transport.Message$Type, int, org.apache.cassandra.transport.ProtocolVersion, java.util.EnumSet<org.apache.cassandra.transport.Frame$Header$Flag>, io.netty.buffer.ByteBuf);
    descriptor: (Lorg/apache/cassandra/transport/Message$Type;ILorg/apache/cassandra/transport/ProtocolVersion;Ljava/util/EnumSet;Lio/netty/buffer/ByteBuf;)Lorg/apache/cassandra/transport/Frame;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=6, args_size=5
        start local 0 // org.apache.cassandra.transport.Message$Type type
        start local 1 // int streamId
        start local 2 // org.apache.cassandra.transport.ProtocolVersion version
        start local 3 // java.util.EnumSet flags
        start local 4 // io.netty.buffer.ByteBuf body
         0: .line 72
            new org.apache.cassandra.transport.Frame$Header
            dup
            aload 2 /* version */
            aload 3 /* flags */
            iload 1 /* streamId */
            aload 0 /* type */
            aload 4 /* body */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            i2l
            invokespecial org.apache.cassandra.transport.Frame$Header.<init>:(Lorg/apache/cassandra/transport/ProtocolVersion;Ljava/util/EnumSet;ILorg/apache/cassandra/transport/Message$Type;J)V
            astore 5 /* header */
        start local 5 // org.apache.cassandra.transport.Frame$Header header
         1: .line 73
            new org.apache.cassandra.transport.Frame
            dup
            aload 5 /* header */
            aload 4 /* body */
            invokespecial org.apache.cassandra.transport.Frame.<init>:(Lorg/apache/cassandra/transport/Frame$Header;Lio/netty/buffer/ByteBuf;)V
            areturn
        end local 5 // org.apache.cassandra.transport.Frame$Header header
        end local 4 // io.netty.buffer.ByteBuf body
        end local 3 // java.util.EnumSet flags
        end local 2 // org.apache.cassandra.transport.ProtocolVersion version
        end local 1 // int streamId
        end local 0 // org.apache.cassandra.transport.Message$Type type
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      type  Lorg/apache/cassandra/transport/Message$Type;
            0    2     1  streamId  I
            0    2     2   version  Lorg/apache/cassandra/transport/ProtocolVersion;
            0    2     3     flags  Ljava/util/EnumSet<Lorg/apache/cassandra/transport/Frame$Header$Flag;>;
            0    2     4      body  Lio/netty/buffer/ByteBuf;
            1    2     5    header  Lorg/apache/cassandra/transport/Frame$Header;
    Signature: (Lorg/apache/cassandra/transport/Message$Type;ILorg/apache/cassandra/transport/ProtocolVersion;Ljava/util/EnumSet<Lorg/apache/cassandra/transport/Frame$Header$Flag;>;Lio/netty/buffer/ByteBuf;)Lorg/apache/cassandra/transport/Frame;
    MethodParameters:
          Name  Flags
      type      
      streamId  
      version   
      flags     
      body      

  public org.apache.cassandra.transport.Frame with(io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/buffer/ByteBuf;)Lorg/apache/cassandra/transport/Frame;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.cassandra.transport.Frame this
        start local 1 // io.netty.buffer.ByteBuf newBody
         0: .line 132
            new org.apache.cassandra.transport.Frame
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.transport.Frame.header:Lorg/apache/cassandra/transport/Frame$Header;
            aload 1 /* newBody */
            invokespecial org.apache.cassandra.transport.Frame.<init>:(Lorg/apache/cassandra/transport/Frame$Header;Lio/netty/buffer/ByteBuf;)V
            areturn
        end local 1 // io.netty.buffer.ByteBuf newBody
        end local 0 // org.apache.cassandra.transport.Frame this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/apache/cassandra/transport/Frame;
            0    1     1  newBody  Lio/netty/buffer/ByteBuf;
    MethodParameters:
         Name  Flags
      newBody  

  private static long discard(io.netty.buffer.ByteBuf, long);
    descriptor: (Lio/netty/buffer/ByteBuf;J)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // io.netty.buffer.ByteBuf buffer
        start local 1 // long remainingToDiscard
         0: .line 264
            lload 1 /* remainingToDiscard */
            aload 0 /* buffer */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            i2l
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            istore 3 /* availableToDiscard */
        start local 3 // int availableToDiscard
         1: .line 265
            aload 0 /* buffer */
            iload 3 /* availableToDiscard */
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
         2: .line 266
            lload 1 /* remainingToDiscard */
            iload 3 /* availableToDiscard */
            i2l
            lsub
            lreturn
        end local 3 // int availableToDiscard
        end local 1 // long remainingToDiscard
        end local 0 // io.netty.buffer.ByteBuf buffer
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    3     0              buffer  Lio/netty/buffer/ByteBuf;
            0    3     1  remainingToDiscard  J
            1    3     3  availableToDiscard  I
    MethodParameters:
                    Name  Flags
      buffer              
      remainingToDiscard  
}
SourceFile: "Frame.java"
NestMembers:
  org.apache.cassandra.transport.Frame$Compressor  org.apache.cassandra.transport.Frame$Decoder  org.apache.cassandra.transport.Frame$Decompressor  org.apache.cassandra.transport.Frame$Encoder  org.apache.cassandra.transport.Frame$Header  org.apache.cassandra.transport.Frame$Header$Flag
InnerClasses:
  public Compressor = org.apache.cassandra.transport.Frame$Compressor of org.apache.cassandra.transport.Frame
  public Decoder = org.apache.cassandra.transport.Frame$Decoder of org.apache.cassandra.transport.Frame
  public Decompressor = org.apache.cassandra.transport.Frame$Decompressor of org.apache.cassandra.transport.Frame
  public Encoder = org.apache.cassandra.transport.Frame$Encoder of org.apache.cassandra.transport.Frame
  public Header = org.apache.cassandra.transport.Frame$Header of org.apache.cassandra.transport.Frame
  public final Flag = org.apache.cassandra.transport.Frame$Header$Flag of org.apache.cassandra.transport.Frame$Header
  public final Type = org.apache.cassandra.transport.Message$Type of org.apache.cassandra.transport.Message