Enum wasmtime_component_util::DiscriminantSize

source ·
pub enum DiscriminantSize {
    Size1,
    Size2,
    Size4,
}
Expand description

Represents the possible sizes in bytes of the discriminant of a variant type in the component model

Variants§

§

Size1

8-bit discriminant

§

Size2

16-bit discriminant

§

Size4

32-bit discriminant

Implementations§

source§

impl DiscriminantSize

source

pub const fn from_count(count: usize) -> Option<Self>

Calculate the size of discriminant needed to represent a variant with the specified number of cases.

source

pub const fn byte_size(&self) -> u32

Returns the size, in bytes, of this discriminant

Trait Implementations§

source§

impl Clone for DiscriminantSize

source§

fn clone(&self) -> DiscriminantSize

Returns a copy of the value. Read more
1.0.0 · source§

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

Performs copy-assignment from source. Read more
source§

impl Debug for DiscriminantSize

source§

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

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

impl From<DiscriminantSize> for u32

source§

fn from(size: DiscriminantSize) -> u32

Size of the discriminant as a u32

source§

impl From<DiscriminantSize> for usize

source§

fn from(size: DiscriminantSize) -> usize

Size of the discriminant as a usize

source§

impl Hash for DiscriminantSize

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for DiscriminantSize

source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for DiscriminantSize

source§

impl Eq for DiscriminantSize

source§

impl StructuralPartialEq for DiscriminantSize

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, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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 = Infallible

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.