Struct ExampleEnumSet

Source
pub struct ExampleEnumSet { /* private fields */ }
Available on doc or test only.
Expand description

Represents a set of ExampleEnum variants.

Implementations§

Source§

impl ExampleEnumSet

Source

pub const Variant0: Self

The bit index that corresponds to ExampleEnum::Variant0.

Source

pub const Variant1: Self

The bit index that corresponds to ExampleEnum::Variant1.

Source

pub const Variant2: Self

The bit index that corresponds to ExampleEnum::Variant2.

Source

pub const Variant3: Self

The bit index that corresponds to ExampleEnum::Variant3.

Source

pub const Variant4: Self

The bit index that corresponds to ExampleEnum::Variant4.

Source§

impl ExampleEnumSet

§Custom fields operations

Source

pub const fn without_fields() -> Self

Returns a new ExampleEnumSet with none of the fields set.

Source

pub const fn with_all_fields() -> Self

Returns a new ExampleEnumSet with all the fields set.

Source

pub const fn are_all_fields(self) -> bool

Returns true if it all the fields are set.

Source§

impl ExampleEnumSet

§Variant0 single field operations

Source

pub const fn with_field_variant0() -> Self

Returns a new ExampleEnumSet with Variant0 field set.

Source

pub const fn is_field_variant0(self) -> bool

Whether the Variant0 field is set.

Source

pub const fn bits_field_variant0(self) -> u32

The size in bits of the Variant0 field.

Source

pub const fn get_field_variant0(self) -> Self

A copy of self with only the bits of Variant0 field.

Source

pub const fn set_field_variant0(self) -> Self

A copy of self with the Variant0 field set.

Source

pub fn mut_set_field_variant0(&mut self)

Sets the Variant0 field.

Source

pub const fn get_field_value_variant0(self) -> Self

The value at the bit range of Variant0 field.

Source

pub const fn set_field_value_variant0(self, value: u8) -> Self

Sets the value into the bitrange of Variant0 field.

Source

pub const fn unset_field_variant0(self) -> Self

A copy of self with the Variant0 field set.

Source

pub fn mut_unset_field_variant0(&mut self)

Unsets the Variant0 field.

Source

pub const fn flip_field_variant0(self) -> Self

Returns a copy of self with the Variant0 field flipped.

Source

pub fn mut_flip_field_variant0(&mut self)

Flips the Variant0 field.

Source§

impl ExampleEnumSet

§Variant1 single field operations

Source

pub const fn with_field_variant1() -> Self

Returns a new ExampleEnumSet with Variant1 field set.

Source

pub const fn is_field_variant1(self) -> bool

Whether the Variant1 field is set.

Source

pub const fn bits_field_variant1(self) -> u32

The size in bits of the Variant1 field.

Source

pub const fn get_field_variant1(self) -> Self

A copy of self with only the bits of Variant1 field.

Source

pub const fn set_field_variant1(self) -> Self

A copy of self with the Variant1 field set.

Source

pub fn mut_set_field_variant1(&mut self)

Sets the Variant1 field.

Source

pub const fn get_field_value_variant1(self) -> Self

The value at the bit range of Variant1 field.

Source

pub const fn set_field_value_variant1(self, value: u8) -> Self

Sets the value into the bitrange of Variant1 field.

Source

pub const fn unset_field_variant1(self) -> Self

A copy of self with the Variant1 field set.

Source

pub fn mut_unset_field_variant1(&mut self)

Unsets the Variant1 field.

Source

pub const fn flip_field_variant1(self) -> Self

Returns a copy of self with the Variant1 field flipped.

Source

pub fn mut_flip_field_variant1(&mut self)

Flips the Variant1 field.

Source§

impl ExampleEnumSet

§Variant2 single field operations

Source

pub const fn with_field_variant2() -> Self

Returns a new ExampleEnumSet with Variant2 field set.

Source

pub const fn is_field_variant2(self) -> bool

Whether the Variant2 field is set.

Source

pub const fn bits_field_variant2(self) -> u32

The size in bits of the Variant2 field.

Source

pub const fn get_field_variant2(self) -> Self

A copy of self with only the bits of Variant2 field.

Source

pub const fn set_field_variant2(self) -> Self

A copy of self with the Variant2 field set.

Source

pub fn mut_set_field_variant2(&mut self)

Sets the Variant2 field.

Source

pub const fn get_field_value_variant2(self) -> Self

The value at the bit range of Variant2 field.

Source

pub const fn set_field_value_variant2(self, value: u8) -> Self

Sets the value into the bitrange of Variant2 field.

Source

pub const fn unset_field_variant2(self) -> Self

A copy of self with the Variant2 field set.

Source

pub fn mut_unset_field_variant2(&mut self)

Unsets the Variant2 field.

Source

pub const fn flip_field_variant2(self) -> Self

Returns a copy of self with the Variant2 field flipped.

Source

pub fn mut_flip_field_variant2(&mut self)

Flips the Variant2 field.

Source§

impl ExampleEnumSet

§Variant3 single field operations

Source

pub const fn with_field_variant3() -> Self

Returns a new ExampleEnumSet with Variant3 field set.

Source

pub const fn is_field_variant3(self) -> bool

Whether the Variant3 field is set.

Source

pub const fn bits_field_variant3(self) -> u32

The size in bits of the Variant3 field.

Source

pub const fn get_field_variant3(self) -> Self

A copy of self with only the bits of Variant3 field.

Source

pub const fn set_field_variant3(self) -> Self

A copy of self with the Variant3 field set.

Source

pub fn mut_set_field_variant3(&mut self)

Sets the Variant3 field.

Source

pub const fn get_field_value_variant3(self) -> Self

The value at the bit range of Variant3 field.

Source

pub const fn set_field_value_variant3(self, value: u8) -> Self

Sets the value into the bitrange of Variant3 field.

Source

pub const fn unset_field_variant3(self) -> Self

A copy of self with the Variant3 field set.

Source

pub fn mut_unset_field_variant3(&mut self)

Unsets the Variant3 field.

Source

pub const fn flip_field_variant3(self) -> Self

Returns a copy of self with the Variant3 field flipped.

Source

pub fn mut_flip_field_variant3(&mut self)

Flips the Variant3 field.

Source§

impl ExampleEnumSet

§Variant4 single field operations

Source

pub const fn with_field_variant4() -> Self

Returns a new ExampleEnumSet with Variant4 field set.

Source

pub const fn is_field_variant4(self) -> bool

Whether the Variant4 field is set.

Source

pub const fn bits_field_variant4(self) -> u32

The size in bits of the Variant4 field.

Source

pub const fn get_field_variant4(self) -> Self

A copy of self with only the bits of Variant4 field.

Source

pub const fn set_field_variant4(self) -> Self

A copy of self with the Variant4 field set.

Source

pub fn mut_set_field_variant4(&mut self)

Sets the Variant4 field.

Source

pub const fn get_field_value_variant4(self) -> Self

The value at the bit range of Variant4 field.

Source

pub const fn set_field_value_variant4(self, value: u8) -> Self

Sets the value into the bitrange of Variant4 field.

Source

pub const fn unset_field_variant4(self) -> Self

A copy of self with the Variant4 field set.

Source

pub fn mut_unset_field_variant4(&mut self)

Unsets the Variant4 field.

Source

pub const fn flip_field_variant4(self) -> Self

Returns a copy of self with the Variant4 field flipped.

Source

pub fn mut_flip_field_variant4(&mut self)

Flips the Variant4 field.

Source§

impl ExampleEnumSet

§General bits manipulation functionality

Source

pub const MAX_BIT: u32 = 7u32

the maximum valid bit index.

Source

pub const fn with_bits(bits: u8) -> Self

Returns self with the given inner bits.

Source

pub const fn new_zeroed() -> Self

Returns self with all bits set to 0.

Source

pub const fn new_oned() -> Self

Returns self with all bits set to 1.

Source

pub const fn bits(self) -> u8

Returns the inner bits.

Source

pub const fn count_ones(&self) -> u32

The number of bits set (number of ones).

Source

pub const fn count_zeros(&self) -> u32

The number of bits unset (number of zeros).

Source

pub const fn is_empty(self) -> bool

Wether all bits are set to 0.

Source

pub const fn is_full(self) -> bool

Whether all bits are set to 1.

Source

pub const fn is_bit_set(self, index: u32) -> bool

Whether the bit at index is set.

§Panics

Panics in debug if index > MAX_BIT.

Source

pub const fn is_checked_bit_set( self, index: u32, ) -> Result<bool, MismatchedBounds>

Whether the bit at index is set, checked version.

§Errors
  • If index > MAX_BIT Returns
Source

pub const fn get_bit(self, index: u32) -> Self

Returns a copy of self with only the value of the bit at index.

§Panics

Panics in debug if index > MAX_BIT.

Source

pub const fn get_checked_bit(self, index: u32) -> Result<Self, MismatchedBounds>

Returns a copy of self with only the value of the bit at index, checked.

§Errors

Returns IndexOutOfBounds if index > MAX_BIT.

Source

pub const fn get_shifted_bit(self, index: u32) -> Self

Returns a copy of self with only the value of the bit at index shifted.

§Panics

Panics in debug if index > MAX_BIT.

Source

pub const fn get_shifted_checked_bit( self, index: u32, ) -> Result<Self, MismatchedBounds>

Returns a copy of self with only the value of the bit at index shifted, checked.

§Errors

Returns IndexOutOfBounds if index > MAX_BIT.

Source

pub fn set_bit(self, index: u32) -> Self

Returns a copy of self setting the bit at index.

§Panics

Panics in debug if index > MAX_BIT.

Source

pub const fn set_checked_bit(self, index: u32) -> Result<Self, MismatchedBounds>

Returns a copy of self setting the bit at index, checked.

§Errors

Returns IndexOutOfBounds if index > MAX_BIT.

Source

pub fn mut_set_bit(&mut self, index: u32)

Sets the bit at index.

§Panics

Panics in debug if index > MAX_BIT.

Source

pub fn mut_set_checked_bit( &mut self, index: u32, ) -> Result<(), MismatchedBounds>

Sets the bit at index, checked.

§Errors

Returns IndexOutOfBounds if index > MAX_BIT.

Source

pub fn unset_bit(self, index: u32) -> Self

Returns a copy of self setting the bit at index.

§Panics

Panics in debug if index > MAX_BIT.

Source

pub const fn unset_checked_bit( self, index: u32, ) -> Result<Self, MismatchedBounds>

Returns a copy of self unsetting the bit at index, checked.

§Errors

Returns IndexOutOfBounds if index > MAX_BIT.

Source

pub fn mut_unset_bit(&mut self, index: u32)

Unsets the bit at index.

§Panics

Panics in debug if index > MAX_BIT.

Source

pub fn mut_unset_checked_bit( &mut self, index: u32, ) -> Result<(), MismatchedBounds>

Unsets the bit at index, checked.

§Errors

Returns IndexOutOfBounds if index > MAX_BIT.

Source

pub const fn flip(self) -> Self

Returns a copy of self with all its bits flipped.

Source

pub fn mut_flip(&mut self)

Flips all the bits of self.

Source

pub fn flip_bit(self, index: u32) -> Self

Returns a copy of self flipping the bit at index.

§Panics

Panics in debug if index > MAX_BIT.

Source

pub const fn flip_checked_bit( self, index: u32, ) -> Result<Self, MismatchedBounds>

Returns a copy of self flipping the bit at index, checked.

§Errors

Returns IndexOutOfBounds if index > MAX_BIT.

Source

pub fn mut_flip_bit(&mut self, index: u32)

Flips the bit at index, unchecked version.

§Panics

Panics in debug if index > MAX_BIT.

Source

pub fn mut_flip_checked_bit( &mut self, index: u32, ) -> Result<(), MismatchedBounds>

Flips the bit at index, checked.

Source§

impl ExampleEnumSet

§Bit ranges

Source

pub const fn mask_range(start: u32, end: u32) -> Self

Returns a new bitmask of 1s from the [start..=end] range.

Sets the rest of the bits to 0.

§Panics

Panics if start >= BITS || end >= BITS || start > end.

Source

pub const fn mask_checked_range( start: u32, end: u32, ) -> Result<Self, MismatchedBounds>

Returns a new bitmask of ones from the [start..=end] checked range.

Sets the rest of the bits to 0.

§Errors

Returns IndexOutOfBounds if start > MAX_BIT || end > MAX_BIT, or MismatchedIndices if start > end.

Source

pub const fn get_range(self, start: u32, end: u32) -> Self

Gets a copy of self with only the bits from the [start..=end] range.

§Panics

Panics in debug if start > MAX_BIT || end > MAX_BIT or if start > end.

Source

pub const fn get_checked_range( self, start: u32, end: u32, ) -> Result<Self, MismatchedBounds>

Gets a copy of self with only the bits from the [start..=end] checked range.

§Errors

Returns IndexOutOfBounds if start > MAX_BIT || end > MAX_BIT, or MismatchedIndices if start > end.

Source

pub const fn get_value_range(self, start: u32, end: u32) -> Self

Gets the value of the bits in from the [start..=end] range.

§Panics

Panics if start >= BITS || end >= BITS || start > end.

Source

pub const fn get_value_checked_range( self, start: u32, end: u32, ) -> Result<Self, MismatchedBounds>

Gets the value of the bits from the [start..=end] checked range.

Sets the rest of the bits to 0.

The bits in the specified range are shifted rightwards so that the least significant bit (LSB) aligns with the units place, forming the integer value.

§Errors

Returns IndexOutOfBounds if start >= BITS || end >= BITS, MismatchedIndices if start > end, and DataOverflow if value does not fit within the specified bit range.

Source

pub const fn set_range(self, start: u32, end: u32) -> Self

Get a copy of self with bits set to 1 from the [start..=end] range.

§Panics

Panics in debug if start > MAX_BIT || end > MAX_BIT or if start > end.

Source

pub const fn set_checked_range( self, start: u32, end: u32, ) -> Result<Self, MismatchedBounds>

Get a copy of self with bits set to 1 from the [start..=end] checked range.

§Errors

Returns IndexOutOfBounds if start > MAX_BIT || end > MAX_BIT, or MismatchedIndices if start > end.

Source

pub fn mut_set_range(&mut self, start: u32, end: u32)

Sets the bits from the [start..=end] range.

§Panics

Panics in debug if start > MAX_BIT || end > MAX_BIT or if start > end.

Source

pub fn mut_set_checked_range( &mut self, start: u32, end: u32, ) -> Result<(), MismatchedBounds>

Sets the bits from the [start..=end] checked range.

§Errors

Returns IndexOutOfBounds if start > MAX_BIT || end > MAX_BIT, or MismatchedIndices if start > end.

Source

pub const fn set_value_range(self, value: u8, start: u32, end: u32) -> Self

Gets a copy of self with the given value set into the [start..=end] range.

Leaves the rest of the bits unchanged.

The value is first masked to fit the size of the range, and then it is inserted into the specified bit range of self, replacing the existing bits in that range. The rest of the bits in self remain unchanged.

§Panics

Panics if start >= BITS || end >= BITS || start > end.

Source

pub const fn set_value_checked_range( self, value: u8, start: u32, end: u32, ) -> Result<Self, MismatchedBounds>

Gets a copy of self with the given value set into the [start..=end] checked range.

Leaves the rest of the bits unchanged.

§Errors

Returns IndexOutOfBounds if start >= BITS || end >= BITS and MismatchedIndices if start > end.

Source

pub const fn set_checked_value_checked_range( self, value: u8, start: u32, end: u32, ) -> Result<Self, MismatchedBounds>

Gets a copy of self with the given checked value set into the [start..=end] checked range.

Leaves the rest of the bits unchanged.

§Errors

Returns IndexOutOfBounds if start >= BITS || end >= BITS, MismatchedIndices if start > end, and DataOverflow if value does not fit within the specified bit range.

Source

pub fn mut_set_value_range(&mut self, value: u8, start: u32, end: u32)

Sets the given value into the [start..=end] range. Sets the bits from the [start..=end] range.

§Panics

Panics in debug if start > MAX_BIT || end > MAX_BIT or if start > end.

Source

pub fn mut_set_value_checked_range( &mut self, value: u8, start: u32, end: u32, ) -> Result<(), MismatchedBounds>

Sets the given value into the [start..=end] checked range.

§Errors

Returns IndexOutOfBounds if start > MAX_BIT || end > MAX_BIT and MismatchedIndices if start > end.

Source

pub fn mut_set_checked_value_checked_range( &mut self, value: u8, start: u32, end: u32, ) -> Result<(), MismatchedBounds>

Sets the given checked value into the [start..=end] checked range.

§Errors

Returns IndexOutOfBounds if start > MAX_BIT || end > MAX_BIT, MismatchedIndices if start > end, and DataOverflow if value does not fit within the specified bit range.

Source

pub const fn unset_range(self, start: u32, end: u32) -> Self

Returns a copy of self with unset bits to 0 from the [start..=end] range.

§Panics

Panics in debug if start > MAX_BIT || end > MAX_BIT or if start > end.

Source

pub const fn unset_checked_range( self, start: u32, end: u32, ) -> Result<Self, MismatchedBounds>

Returns a copy of self with unset bits to 0 from the [start..=end] checked range.

§Errors

Returns IndexOutOfBounds if start > MAX_BIT || end > MAX_BIT, or MismatchedIndices if start > end.

Source

pub fn mut_unset_range(&mut self, start: u32, end: u32)

Unsets the bits from the [start..=end] range.

§Panics

Panics in debug if start > MAX_BIT || end > MAX_BIT or if start > end.

Source

pub fn mut_unset_checked_range( &mut self, start: u32, end: u32, ) -> Result<(), MismatchedBounds>

Unsets the bits from the [start..=end] checked range.

§Errors

Returns IndexOutOfBounds if start > MAX_BIT || end > MAX_BIT, or MismatchedIndices if start > end.

Source

pub const fn flip_range(self, start: u32, end: u32) -> Self

Returns a copy of self with flipped bits from the [start..=end] range.

§Panics

Panics in debug if start > MAX_BIT || end > MAX_BIT or if start > end.

Source

pub const fn flip_checked_range( self, start: u32, end: u32, ) -> Result<Self, MismatchedBounds>

Returns a copy of self with flipped bits from the [start..=end] checked range.

§Errors

Returns IndexOutOfBounds if start > MAX_BIT || end > MAX_BIT, or MismatchedIndices if start > end.

Source

pub fn mut_flip_range(&mut self, start: u32, end: u32)

Flips the bits from the [start..=end] range.

§Panics

Panics in debug if start > MAX_BIT || end > MAX_BIT or if start > end.

Source

pub fn mut_flip_checked_range( &mut self, start: u32, end: u32, ) -> Result<(), MismatchedBounds>

Flips the bits from the [start..=end] checked range.

§Errors

Returns IndexOutOfBounds if start > MAX_BIT || end > MAX_BIT, or MismatchedIndices if start > end.

Source§

impl ExampleEnumSet

§Bit masks

Source

pub const fn contains_mask(self, mask: u8) -> bool

Whether self contains all the same set bits that are set in mask.

Source

pub const fn contains_other(self, other: Self) -> bool

Whether self contains all the same set bits that are set in other.

Source

pub const fn overlaps_mask(&self, mask: u8) -> bool

Whether there’s at least one set bit in common between self and mask.

Source

pub const fn overlaps_other(&self, other: Self) -> bool

Whether there’s at least one set bit in common between self and other.

Source

pub const fn intersect_mask(self, mask: u8) -> Self

A copy of self with only the bits both in self and mask.

Source

pub const fn intersect_other(self, other: Self) -> Self

A copy of self with only the bits both in self and other.

Source

pub fn mut_intersect_mask(&mut self, mask: u8)

Only leaves the bits both in self and mask.

Source

pub fn mut_intersect_other(&mut self, other: Self)

Only leaves the bits both in self and other.

Source

pub const fn set_mask(self, mask: u8) -> Self

A copy of self setting the bits that are set in mask.

Source

pub const fn set_other(self, other: Self) -> Self

A copy of self setting the bits that are set in other.

Source

pub fn mut_set_mask(&mut self, mask: u8)

Sets the bits that are set in mask.

Source

pub fn mut_set_other(&mut self, other: Self)

Sets the bits that are set in other.

Source

pub const fn unset_mask(self, mask: u8) -> Self

A copy of self unsetting the bits that are set in mask.

Source

pub const fn unset_other(self, other: Self) -> Self

A copy of self unsetting the bits that are set in other.

Source

pub fn mut_unset_mask(&mut self, mask: u8)

Unsets the bits that are set in mask.

Source

pub fn mut_unset_other(&mut self, other: Self)

Unsets the bits that are set in other.

Source

pub const fn flip_mask(self, mask: u8) -> Self

A copy of self flipping the bits that are set in mask.

Source

pub const fn flip_other(self, other: Self) -> Self

Returns a copy of self flipping the bits that are set in other.

Source

pub fn mut_flip_mask(&mut self, mask: u8)

Flips the bits that are set in mask.

Source

pub fn mut_flip_other(&mut self, other: Self)

Flips the bits that are set in other.

Trait Implementations§

Source§

impl Binary for ExampleEnumSet

Source§

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

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

impl Clone for ExampleEnumSet

Source§

fn clone(&self) -> ExampleEnumSet

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 ExampleEnumSet

Source§

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

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

impl Default for ExampleEnumSet

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Display for ExampleEnumSet

Source§

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

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

impl Hash for ExampleEnumSet

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 LowerExp for ExampleEnumSet

Source§

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

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

impl LowerHex for ExampleEnumSet

Source§

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

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

impl Octal for ExampleEnumSet

Source§

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

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

impl Ord for ExampleEnumSet

Source§

fn cmp(&self, other: &ExampleEnumSet) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for ExampleEnumSet

Source§

fn eq(&self, other: &ExampleEnumSet) -> 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 PartialOrd for ExampleEnumSet

Source§

fn partial_cmp(&self, other: &ExampleEnumSet) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl UpperExp for ExampleEnumSet

Source§

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

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

impl UpperHex for ExampleEnumSet

Source§

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

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

impl Copy for ExampleEnumSet

Source§

impl Eq for ExampleEnumSet

Source§

impl StructuralPartialEq for ExampleEnumSet

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> ByteSized for T

Source§

const BYTE_ALIGN: usize = _

The alignment of this type in bytes.
Source§

const BYTE_SIZE: usize = _

The size of this type in bytes.
Source§

fn byte_align(&self) -> usize

Returns the alignment of this type in bytes.
Source§

fn byte_size(&self) -> usize

Returns the size of this type in bytes. Read more
Source§

fn ptr_size_ratio(&self) -> [usize; 2]

Returns the size ratio between Ptr::BYTES and BYTE_SIZE. Read more
Source§

impl<T, R> Chain<R> for T
where T: ?Sized,

Source§

fn chain<F>(self, f: F) -> R
where F: FnOnce(Self) -> R, Self: Sized,

Chain a function which takes the parameter by value.
Source§

fn chain_ref<F>(&self, f: F) -> R
where F: FnOnce(&Self) -> R,

Chain a function which takes the parameter by shared reference.
Source§

fn chain_mut<F>(&mut self, f: F) -> R
where F: FnOnce(&mut Self) -> R,

Chain a function which takes the parameter by exclusive reference.
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

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

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<Q, K> Comparable<K> for Q
where Q: Ord + ?Sized, K: Borrow<Q> + ?Sized,

§

fn compare(&self, key: &K) -> Ordering

Compare self to key and return their ordering.
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

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

Source§

fn type_id() -> TypeId

Returns the TypeId of Self. Read more
Source§

fn type_of(&self) -> TypeId

Returns the TypeId of self. Read more
Source§

fn type_name(&self) -> &'static str

Returns the type name of self. Read more
Source§

fn type_is<T: 'static>(&self) -> bool

Returns true if Self is of type T. Read more
Source§

fn type_hash(&self) -> u64

Returns a deterministic hash of the TypeId of Self.
Source§

fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64

Returns a deterministic hash of the TypeId of Self using a custom hasher.
Source§

fn as_any_ref(&self) -> &dyn Any
where Self: Sized,

Upcasts &self as &dyn Any. Read more
Source§

fn as_any_mut(&mut self) -> &mut dyn Any
where Self: Sized,

Upcasts &mut self as &mut dyn Any. Read more
Source§

fn as_any_box(self: Box<Self>) -> Box<dyn Any>
where Self: Sized,

Upcasts Box<self> as Box<dyn Any>. Read more
Source§

fn downcast_ref<T: 'static>(&self) -> Option<&T>

Available on crate feature unsafe_layout only.
Returns some shared reference to the inner value if it is of type T. Read more
Source§

fn downcast_mut<T: 'static>(&mut self) -> Option<&mut T>

Available on crate feature unsafe_layout only.
Returns some exclusive reference to the inner value if it is of type T. Read more
Source§

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

Source§

const NEEDS_DROP: bool = _

Know whether dropping values of this type matters, in compile-time.
Source§

fn mem_align_of<T>() -> usize

Returns the minimum alignment of the type in bytes. Read more
Source§

fn mem_align_of_val(&self) -> usize

Returns the alignment of the pointed-to value in bytes. Read more
Source§

fn mem_size_of<T>() -> usize

Returns the size of a type in bytes. Read more
Source§

fn mem_size_of_val(&self) -> usize

Returns the size of the pointed-to value in bytes. Read more
Source§

fn mem_copy(&self) -> Self
where Self: Copy,

Bitwise-copies a value. Read more
Source§

fn mem_needs_drop(&self) -> bool

Returns true if dropping values of this type matters. Read more
Source§

fn mem_drop(self)
where Self: Sized,

Drops self by running its destructor. Read more
Source§

fn mem_forget(self)
where Self: Sized,

Forgets about self without running its destructor. Read more
Source§

fn mem_replace(&mut self, other: Self) -> Self
where Self: Sized,

Replaces self with other, returning the previous value of self. Read more
Source§

fn mem_take(&mut self) -> Self
where Self: Default,

Replaces self with its default value, returning the previous value of self. Read more
Source§

fn mem_swap(&mut self, other: &mut Self)
where Self: Sized,

Swaps the value of self and other without deinitializing either one. Read more
Source§

unsafe fn mem_zeroed<T>() -> T

Available on crate feature unsafe_layout only.
Returns the value of type T represented by the all-zero byte-pattern. Read more
Source§

unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst

Available on crate feature unsafe_layout only.
Returns the value of type T represented by the all-zero byte-pattern. Read more
Source§

fn mem_as_bytes(&self) -> &[u8]
where Self: Sync + Unpin,

Available on crate feature unsafe_slice only.
View a Sync + Unpin self as &[u8]. Read more
Source§

fn mem_as_bytes_mut(&mut self) -> &mut [u8]
where Self: Sync + Unpin,

Available on crate feature unsafe_slice only.
View a Sync + Unpin self as &mut [u8]. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<S> FromSample<S> for S

§

fn from_sample_(s: S) -> S

Source§

impl<T> Hook for T

Source§

fn hook_ref<F>(self, f: F) -> Self
where F: FnOnce(&Self),

Applies a function which takes the parameter by shared reference, and then returns the (possibly) modified owned value. Read more
Source§

fn hook_mut<F>(self, f: F) -> Self
where F: FnOnce(&mut Self),

Applies a function which takes the parameter by exclusive reference, and then returns the (possibly) modified owned value. Read more
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

impl<F, T> IntoSample<T> for F
where T: FromSample<F>,

§

fn into_sample(self) -> T

§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
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
§

impl<T, U> ToSample<U> for T
where U: FromSample<T>,

§

fn to_sample_(self) -> U

Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
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.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
§

impl<S, T> Duplex<S> for T
where T: FromSample<S> + ToSample<S>,

§

impl<T> Ungil for T
where T: Send,