module

Crabbit::AMQP::MessageCodec

Encoder and decoder for complete AMQP 1.0 messages.

Applications generally use Crabbit::Message#to_amqp and Crabbit::Message.from_amqp, which delegate here.

Instance methods

decode(bytes : Bytes, *, zero_copy : Bool = false) : Message

Decodes one complete message from bytes.

Binary values are copied unless zero_copy is true. Unknown described sections are preserved in Crabbit::Message#extra_sections.

Source
encode(message : Message, io : IO) : Nil

Encodes a complete message directly into io.

Source
encode(message : Message) : Bytes

Encodes a complete message to a newly allocated byte slice.

Source
encode_data(bytes : Bytes) : Bytes

Encodes bytes as a complete message containing one AMQP Data section.

This fast path avoids constructing an intermediate Crabbit::Message.

Source