pub trait BoolPacker {
// Required methods
fn pack_bool(first: bool, second: bool) -> Self;
fn unpack_bool(&self) -> (bool, bool);
}Expand description
Trait for packing and unpacking two bool values into a single value.
Required Methods§
Sourcefn pack_bool(first: bool, second: bool) -> Self
fn pack_bool(first: bool, second: bool) -> Self
Packs two bool values into a single value of the implementing type.
§Example
use num_packer::BoolPacker;
let packed = u8::pack_bool(true, false);
assert_eq!(packed, 0b10);Sourcefn unpack_bool(&self) -> (bool, bool)
fn unpack_bool(&self) -> (bool, bool)
Unpacks the single value back into two bool values.
§Example
use num_packer::BoolPacker;
let packed = u8::pack_bool(true, false);
let (first, second) = packed.unpack_bool();
assert_eq!((first, second), (true, false));Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.