class

RNS::Envelope(TPacket)

Inherits Reference < Object

Internal wrapper that pairs a MessageBase with its wire-format representation, sequence number, and retry tracking state.

Envelope handles packing messages into a 6-byte header (msgtype + sequence + length) followed by the payload, and unpacking received bytes back into typed message objects.

Constructors

new(outlet : ChannelOutletBase(TPacket), message : MessageBase | Nil = nil, raw : Bytes | Nil = nil, sequence : UInt16 = 0_u16)
Source

Instance methods

message
Source
message=(message : MessageBase | Nil)
Source
outlet
Source
outlet=(outlet : ChannelOutletBase(TPacket))
Source
pack
Source
packed
Source
packed=(packed : Bool)
Source
packet
Source
packet=(packet : TPacket | Nil)
Source
raw=(raw : Bytes | Nil)
Source
sequence
Source
sequence=(sequence : UInt16)
Source
tracked
Source
tracked=(tracked : Bool)
Source
tries
Source
tries=(tries : Int32)
Source
ts=(ts : Float64)
Source
unpack(message_factories : Hash(UInt16, MessageBase.class)) : MessageBase
Source
unpacked
Source
unpacked=(unpacked : Bool)
Source