pub struct Packet { /* private fields */ }Expand description
User-friendly packet containing payload, endpoint, and guarantees.
Implementations§
Source§impl Packet
impl Packet
Sourcepub fn new(
addr: SocketAddr,
payload: Arc<[u8]>,
delivery: DeliveryGuarantee,
ordering: OrderingGuarantee,
channel_id: u8,
) -> Packet
pub fn new( addr: SocketAddr, payload: Arc<[u8]>, delivery: DeliveryGuarantee, ordering: OrderingGuarantee, channel_id: u8, ) -> Packet
Creates a new packet with the specified guarantees and channel.
Sourcepub fn unreliable(addr: SocketAddr, payload: Vec<u8>) -> Packet
pub fn unreliable(addr: SocketAddr, payload: Vec<u8>) -> Packet
Creates an unreliable, unordered packet on channel 0 (fire-and-forget).
Sourcepub fn unreliable_sequenced(
addr: SocketAddr,
payload: Vec<u8>,
stream_id: Option<u8>,
) -> Packet
pub fn unreliable_sequenced( addr: SocketAddr, payload: Vec<u8>, stream_id: Option<u8>, ) -> Packet
Creates an unreliable, sequenced packet on channel 0 (drops out-of-order).
Sourcepub fn unsequenced(addr: SocketAddr, payload: Vec<u8>) -> Packet
pub fn unsequenced(addr: SocketAddr, payload: Vec<u8>) -> Packet
Creates an unreliable, unsequenced packet on channel 0 (prevents duplicates, allows out-of-order).
Sourcepub fn reliable_unordered(addr: SocketAddr, payload: Vec<u8>) -> Packet
pub fn reliable_unordered(addr: SocketAddr, payload: Vec<u8>) -> Packet
Creates a reliable, unordered packet on channel 0 (guaranteed delivery).
Sourcepub fn reliable_ordered(
addr: SocketAddr,
payload: Vec<u8>,
stream_id: Option<u8>,
) -> Packet
pub fn reliable_ordered( addr: SocketAddr, payload: Vec<u8>, stream_id: Option<u8>, ) -> Packet
Creates a reliable, ordered packet on channel 0 (TCP-like).
Sourcepub fn reliable_sequenced(
addr: SocketAddr,
payload: Vec<u8>,
stream_id: Option<u8>,
) -> Packet
pub fn reliable_sequenced( addr: SocketAddr, payload: Vec<u8>, stream_id: Option<u8>, ) -> Packet
Creates a reliable, sequenced packet on channel 0 (keeps latest).
Sourcepub fn unreliable_on_channel(
addr: SocketAddr,
payload: Vec<u8>,
channel_id: u8,
) -> Packet
pub fn unreliable_on_channel( addr: SocketAddr, payload: Vec<u8>, channel_id: u8, ) -> Packet
Creates an unreliable, unordered packet on specified channel (fire-and-forget).
Sourcepub fn reliable_on_channel(
addr: SocketAddr,
payload: Vec<u8>,
channel_id: u8,
) -> Packet
pub fn reliable_on_channel( addr: SocketAddr, payload: Vec<u8>, channel_id: u8, ) -> Packet
Creates a reliable, unordered packet on specified channel (guaranteed delivery).
Sourcepub fn into_payload(self) -> Arc<[u8]>
pub fn into_payload(self) -> Arc<[u8]>
Consumes the packet and returns the payload.
Sourcepub fn payload_arc(&self) -> Arc<[u8]>
pub fn payload_arc(&self) -> Arc<[u8]>
Returns a clone of the underlying Arc payload for zero-copy sharing.
Sourcepub fn addr(&self) -> SocketAddr
pub fn addr(&self) -> SocketAddr
Returns the remote endpoint address.
Sourcepub fn delivery_guarantee(&self) -> DeliveryGuarantee
pub fn delivery_guarantee(&self) -> DeliveryGuarantee
Returns the delivery guarantee for this packet.
Sourcepub fn order_guarantee(&self) -> OrderingGuarantee
pub fn order_guarantee(&self) -> OrderingGuarantee
Returns the ordering guarantee for this packet.
Sourcepub fn channel_id(&self) -> u8
pub fn channel_id(&self) -> u8
Returns the channel ID for this packet.