public class org.bson.codecs.RawBsonDocumentCodec implements org.bson.codecs.Codec<org.bson.RawBsonDocument>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.bson.codecs.RawBsonDocumentCodec
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.codecs.RawBsonDocumentCodec this
         0: .line 38
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 39
            return
        end local 0 // org.bson.codecs.RawBsonDocumentCodec this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/bson/codecs/RawBsonDocumentCodec;

  public void encode(org.bson.BsonWriter, org.bson.RawBsonDocument, org.bson.codecs.EncoderContext);
    descriptor: (Lorg/bson/BsonWriter;Lorg/bson/RawBsonDocument;Lorg/bson/codecs/EncoderContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // org.bson.codecs.RawBsonDocumentCodec this
        start local 1 // org.bson.BsonWriter writer
        start local 2 // org.bson.RawBsonDocument value
        start local 3 // org.bson.codecs.EncoderContext encoderContext
         0: .line 43
            new org.bson.BsonBinaryReader
            dup
            new org.bson.io.ByteBufferBsonInput
            dup
            aload 2 /* value */
            invokevirtual org.bson.RawBsonDocument.getByteBuffer:()Lorg/bson/ByteBuf;
            invokespecial org.bson.io.ByteBufferBsonInput.<init>:(Lorg/bson/ByteBuf;)V
            invokespecial org.bson.BsonBinaryReader.<init>:(Lorg/bson/io/BsonInput;)V
            astore 4 /* reader */
        start local 4 // org.bson.BsonBinaryReader reader
         1: .line 45
            aload 1 /* writer */
            aload 4 /* reader */
            invokeinterface org.bson.BsonWriter.pipe:(Lorg/bson/BsonReader;)V
         2: .line 46
            goto 6
      StackMap locals: org.bson.codecs.RawBsonDocumentCodec org.bson.BsonWriter org.bson.RawBsonDocument org.bson.codecs.EncoderContext org.bson.BsonBinaryReader
      StackMap stack: java.lang.Throwable
         3: astore 5
         4: .line 47
            aload 4 /* reader */
            invokevirtual org.bson.BsonBinaryReader.close:()V
         5: .line 48
            aload 5
            athrow
         6: .line 47
      StackMap locals:
      StackMap stack:
            aload 4 /* reader */
            invokevirtual org.bson.BsonBinaryReader.close:()V
         7: .line 49
            return
        end local 4 // org.bson.BsonBinaryReader reader
        end local 3 // org.bson.codecs.EncoderContext encoderContext
        end local 2 // org.bson.RawBsonDocument value
        end local 1 // org.bson.BsonWriter writer
        end local 0 // org.bson.codecs.RawBsonDocumentCodec this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0            this  Lorg/bson/codecs/RawBsonDocumentCodec;
            0    8     1          writer  Lorg/bson/BsonWriter;
            0    8     2           value  Lorg/bson/RawBsonDocument;
            0    8     3  encoderContext  Lorg/bson/codecs/EncoderContext;
            1    8     4          reader  Lorg/bson/BsonBinaryReader;
      Exception table:
        from    to  target  type
           1     3       3  any
    MethodParameters:
                Name  Flags
      writer          final
      value           final
      encoderContext  final

  public org.bson.RawBsonDocument decode(org.bson.BsonReader, org.bson.codecs.DecoderContext);
    descriptor: (Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Lorg/bson/RawBsonDocument;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // org.bson.codecs.RawBsonDocumentCodec this
        start local 1 // org.bson.BsonReader reader
        start local 2 // org.bson.codecs.DecoderContext decoderContext
         0: .line 53
            new org.bson.io.BasicOutputBuffer
            dup
            iconst_0
            invokespecial org.bson.io.BasicOutputBuffer.<init>:(I)V
            astore 3 /* buffer */
        start local 3 // org.bson.io.BasicOutputBuffer buffer
         1: .line 54
            new org.bson.BsonBinaryWriter
            dup
            aload 3 /* buffer */
            invokespecial org.bson.BsonBinaryWriter.<init>:(Lorg/bson/io/BsonOutput;)V
            astore 4 /* writer */
        start local 4 // org.bson.BsonBinaryWriter writer
         2: .line 56
            aload 4 /* writer */
            aload 1 /* reader */
            invokevirtual org.bson.BsonBinaryWriter.pipe:(Lorg/bson/BsonReader;)V
         3: .line 57
            new org.bson.RawBsonDocument
            dup
            aload 3 /* buffer */
            invokevirtual org.bson.io.BasicOutputBuffer.getInternalBuffer:()[B
            iconst_0
            aload 3 /* buffer */
            invokevirtual org.bson.io.BasicOutputBuffer.getPosition:()I
            invokespecial org.bson.RawBsonDocument.<init>:([BII)V
            astore 6
         4: .line 59
            aload 4 /* writer */
            invokevirtual org.bson.BsonBinaryWriter.close:()V
         5: .line 60
            aload 3 /* buffer */
            invokevirtual org.bson.io.BasicOutputBuffer.close:()V
         6: .line 57
            aload 6
            areturn
         7: .line 58
      StackMap locals: org.bson.codecs.RawBsonDocumentCodec org.bson.BsonReader org.bson.codecs.DecoderContext org.bson.io.BasicOutputBuffer org.bson.BsonBinaryWriter
      StackMap stack: java.lang.Throwable
            astore 5
         8: .line 59
            aload 4 /* writer */
            invokevirtual org.bson.BsonBinaryWriter.close:()V
         9: .line 60
            aload 3 /* buffer */
            invokevirtual org.bson.io.BasicOutputBuffer.close:()V
        10: .line 61
            aload 5
            athrow
        end local 4 // org.bson.BsonBinaryWriter writer
        end local 3 // org.bson.io.BasicOutputBuffer buffer
        end local 2 // org.bson.codecs.DecoderContext decoderContext
        end local 1 // org.bson.BsonReader reader
        end local 0 // org.bson.codecs.RawBsonDocumentCodec this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0            this  Lorg/bson/codecs/RawBsonDocumentCodec;
            0   11     1          reader  Lorg/bson/BsonReader;
            0   11     2  decoderContext  Lorg/bson/codecs/DecoderContext;
            1   11     3          buffer  Lorg/bson/io/BasicOutputBuffer;
            2   11     4          writer  Lorg/bson/BsonBinaryWriter;
      Exception table:
        from    to  target  type
           2     4       7  any
    MethodParameters:
                Name  Flags
      reader          final
      decoderContext  final

  public java.lang.Class<org.bson.RawBsonDocument> getEncoderClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bson.codecs.RawBsonDocumentCodec this
         0: .line 66
            ldc Lorg/bson/RawBsonDocument;
            areturn
        end local 0 // org.bson.codecs.RawBsonDocumentCodec this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bson/codecs/RawBsonDocumentCodec;
    Signature: ()Ljava/lang/Class<Lorg/bson/RawBsonDocument;>;

  public java.lang.Object decode(org.bson.BsonReader, org.bson.codecs.DecoderContext);
    descriptor: (Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            invokevirtual org.bson.codecs.RawBsonDocumentCodec.decode:(Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Lorg/bson/RawBsonDocument;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void encode(org.bson.BsonWriter, java.lang.Object, org.bson.codecs.EncoderContext);
    descriptor: (Lorg/bson/BsonWriter;Ljava/lang/Object;Lorg/bson/codecs/EncoderContext;)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast org.bson.RawBsonDocument
            aload 3
            invokevirtual org.bson.codecs.RawBsonDocumentCodec.encode:(Lorg/bson/BsonWriter;Lorg/bson/RawBsonDocument;Lorg/bson/codecs/EncoderContext;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Lorg/bson/codecs/Codec<Lorg/bson/RawBsonDocument;>;
SourceFile: "RawBsonDocumentCodec.java"