module

Amqp::Wire::AmqpZeroNineOne::ContentHeader

Constants

FLAG_APP_ID = 8_u16
FLAG_CLUSTER_ID = 4_u16
FLAG_CONTENT_ENCODING = 16384_u16
FLAG_CONTENT_TYPE = 32768_u16

Flag-bit constants (MSB→LSB per the spec table).

FLAG_CORRELATION_ID = 1024_u16
FLAG_DELIVERY_MODE = 4096_u16
FLAG_EXPIRATION = 256_u16
FLAG_HEADERS = 8192_u16
FLAG_MESSAGE_ID = 128_u16
FLAG_PRIORITY = 2048_u16
FLAG_REPLY_TO = 512_u16
FLAG_TIMESTAMP = 64_u16
FLAG_TYPE = 32_u16
FLAG_USER_ID = 16_u16

Instance methods

decode(payload : Bytes) : Decoded
Source
decode_empty(payload : Bytes) : Decoded | Nil
Source
decode_empty_metadata(payload : Bytes) : Tuple(UInt16, UInt64) | Nil
Source
empty_frame(channel : UInt16, class_id : UInt16, body_size : UInt64) : Bytes
Source
encode(class_id : UInt16, body_size : UInt64, props : Amqp::Properties) : Bytes

Builds the full header-frame payload (class-id .. property-list).

Source
encode_properties(props : Amqp::Properties) : EncodedProperties

Encodes only the property flags and property-list tail. The body size is intentionally excluded so fixed-property publishers can reuse the tail.

Source
frame(channel : UInt16, class_id : UInt16, body_size : UInt64, encoded : EncodedProperties) : Bytes
Source
write_empty_frame(io : IO, channel : UInt16, class_id : UInt16, body_size : UInt64) : Nil
Source
write_frame(io : IO, channel : UInt16, class_id : UInt16, body_size : UInt64, encoded : EncodedProperties) : Nil
Source

Nested types