Struct mycelium_bitfield::pack::Packing8
source · pub struct Packing8(/* private fields */);Expand description
Wraps a u8 to add methods for packing bit ranges specified by Pack8.
See the module-level documentation for details on using packing specs.
Implementations§
source§impl Packing8
impl Packing8
sourcepub const fn pack_truncating(self, value: u8, packer: &Pack8) -> Self
pub const fn pack_truncating(self, value: u8, packer: &Pack8) -> Self
Pack bits from value into self, using the range
specified by packer.
Any bits in value outside the range specified by packer
are ignored.
sourcepub const fn pack_from_src(self, value: u8, pair: &Pair8) -> Self
pub const fn pack_from_src(self, value: u8, pair: &Pair8) -> Self
Pack bits from src into self, using the packing pair
specified by pair, with self serving as the “destination” member
of the pair, and src serving as the “source” member of the
pair.
sourcepub const fn pack_from_dst(self, value: u8, pair: &Pair8) -> Self
pub const fn pack_from_dst(self, value: u8, pair: &Pair8) -> Self
Pack bits from dst into self, using the packing pair
specified by pair, with self serving as the “siyrce” member
of the pair, and dst serving as the “destination” member of the
pair.
sourcepub fn pack<T: FromBits<u8>, F>(self, value: T, packer: &Pack8<T, F>) -> Self
pub fn pack<T: FromBits<u8>, F>(self, value: T, packer: &Pack8<T, F>) -> Self
Pack bits from value into self, using the range
specified by packer.
§Panics
If value contains bits outside the range specified by packer.
sourcepub const fn set_all<T, F>(self, packer: &Pack8<T, F>) -> Self
pub const fn set_all<T, F>(self, packer: &Pack8<T, F>) -> Self
Set all bits in the range specified by packer to 1 in self.
sourcepub const fn unset_all<T, F>(self, packer: &Pack8<T, F>) -> Self
pub const fn unset_all<T, F>(self, packer: &Pack8<T, F>) -> Self
Set all bits in the range specified by packer to 0 in
self.
sourcepub const fn contains_any<T, F>(self, packer: &Pack8<T, F>) -> bool
pub const fn contains_any<T, F>(self, packer: &Pack8<T, F>) -> bool
Returns true if any bits specified by packer are set
in self.
sourcepub const fn contains_all<T, F>(self, packer: &Pack8<T, F>) -> bool
pub const fn contains_all<T, F>(self, packer: &Pack8<T, F>) -> bool
Returns true if any bits specified by packer are set
in self.
Trait Implementations§
impl Copy for Packing8
impl Eq for Packing8
impl StructuralPartialEq for Packing8
Auto Trait Implementations§
impl Freeze for Packing8
impl RefUnwindSafe for Packing8
impl Send for Packing8
impl Sync for Packing8
impl Unpin for Packing8
impl UnwindSafe for Packing8
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)