Skip to main content

ObjectStatus

Enum ObjectStatus 

Source
#[repr(u8)]
pub enum ObjectStatus { Normal = 0, EndOfGroup = 3, EndOfTrack = 4, }
Expand description

Object status values, from MoQ Transport draft-17 Section 10.2.1.1 “Object Status”.

The draft assigns 0x0, 0x3 and 0x4. Of every other value the section says: “Any other value SHOULD be treated as a protocol error and the session SHOULD be closed with a PROTOCOL_VIOLATION”. ObjectStatus::from_u64 answers None for everything the draft leaves unassigned, 0x1 and 0x2 included.

Variants§

§

Normal = 0

Normal object. Implicit for any non-zero length object; zero-length objects encode it explicitly.

§

EndOfGroup = 3

End of Group. No object with the given Group ID and an Object ID greater than or equal to the one specified exists in that group.

§

EndOfTrack = 4

End of Track. No object at a location equal to or greater than the one specified exists.

Implementations§

Source§

impl ObjectStatus

Source

pub const ALL: &[ObjectStatus]

Every status draft-17 assigns, in ascending wire order.

This is exactly the set ObjectStatus::from_u64 accepts. Any other value is one the draft does not assign.

Source

pub fn from_u64(v: u64) -> Option<Self>

Convert a raw u64 to an ObjectStatus, or None if draft-17 does not assign that value.

Source

pub fn as_u64(self) -> u64

Return the wire value.

Source

pub fn as_u8(self) -> u8

Return the wire value as a single byte.

A draft-17 status datagram carries its status as one bare byte rather than a varint, so the datagram encoder needs the code in that width; every assigned code is well under 0xff, so this is the same number ObjectStatus::as_u64 returns.

Trait Implementations§

Source§

impl Clone for ObjectStatus

Source§

fn clone(&self) -> ObjectStatus

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for ObjectStatus

Source§

impl Debug for ObjectStatus

Source§

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

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

impl Eq for ObjectStatus

Source§

impl PartialEq for ObjectStatus

Source§

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

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

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

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for ObjectStatus

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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, <T as TryFrom<U>>::Error>

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.