Skip to main content

KcpSegmentMut

Struct KcpSegmentMut 

Source
pub struct KcpSegmentMut<'a> { /* private fields */ }
Expand description

An exact mutable KCP segment with a structurally complete declared payload.

Implementations§

Source§

impl<'a> KcpSegmentMut<'a>

Source

pub fn parse( bytes: &'a mut [u8], ) -> Result<(Self, &'a mut [u8]), KcpSegmentParseError>

Parses exactly one KCP segment and returns the unconsumed mutable input suffix.

This validates only structural boundaries. Raw command bytes and all field values are preserved without runtime KCP semantic validation.

Source

pub fn conversation_id(&self) -> KcpConversationId

Returns the conversation identifier.

Source

pub fn command(&self) -> KcpCommand

Returns the raw command byte.

Source

pub fn fragment(&self) -> KcpFragment

Returns the fragment number.

Source

pub fn window_size(&self) -> u16

Returns the advertised receive window.

Source

pub fn timestamp(&self) -> KcpTimestamp

Returns the timestamp.

Source

pub fn sequence_number(&self) -> KcpSequenceNumber

Returns the sequence number.

Source

pub fn unacknowledged(&self) -> KcpUnacknowledged

Returns the unacknowledged sequence-number marker.

Source

pub fn payload_length(&self) -> u32

Returns the encoded payload length.

Source

pub fn payload(&self) -> &[u8]

Returns the exact payload bytes.

Source

pub fn payload_mut(&mut self) -> &mut [u8] ⓘ

Returns the exact payload bytes mutably without changing its encoded length.

Source

pub fn as_bytes(&self) -> &[u8]

Returns the exact complete segment bytes, excluding any input suffix.

Source

pub fn set_conversation_id(&mut self, value: KcpConversationId)

Replaces the conversation identifier.

Source

pub fn set_command(&mut self, value: KcpCommand)

Replaces the raw command byte.

Source

pub fn set_fragment(&mut self, value: KcpFragment)

Replaces the fragment number.

Source

pub fn set_window_size(&mut self, value: u16)

Replaces the advertised receive window.

Source

pub fn set_timestamp(&mut self, value: KcpTimestamp)

Replaces the timestamp.

Source

pub fn set_sequence_number(&mut self, value: KcpSequenceNumber)

Replaces the sequence number.

Source

pub fn set_unacknowledged(&mut self, value: KcpUnacknowledged)

Replaces the unacknowledged sequence-number marker.

Trait Implementations§

Source§

impl<'a> Debug for KcpSegmentMut<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'a> Eq for KcpSegmentMut<'a>

Source§

impl<'a> PartialEq for KcpSegmentMut<'a>

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl<'a> StructuralPartialEq for KcpSegmentMut<'a>

Auto Trait Implementations§

§

impl<'a> !UnwindSafe for KcpSegmentMut<'a>

§

impl<'a> Freeze for KcpSegmentMut<'a>

§

impl<'a> RefUnwindSafe for KcpSegmentMut<'a>

§

impl<'a> Send for KcpSegmentMut<'a>

§

impl<'a> Sync for KcpSegmentMut<'a>

§

impl<'a> Unpin for KcpSegmentMut<'a>

§

impl<'a> UnsafeUnpin for KcpSegmentMut<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.