Struct fixed_bitmaps::BitmapArch [−][src]
pub struct BitmapArch(_);
Expand description
A bitmap whose size depends on the architecture of the target computer it’s running on. For example on a 64-bit target, this bitmap would be 8 bytes long, whereas on a 32-bit target, it would hold 4 bytes of data.
Examples
// Creates an empty bitmap
use fixed_bitmaps::BitmapArch;
let mut bitmap = BitmapArch::default();
// Bitmaps implement Display so you can view what the map looks like
// Will show 32 0's on a 32-bit architecture, and 64 on a 64-bit architecture
println!("Default bitmap: {}", bitmap);
// Bitmaps also convert to their respective unsigned int versions and back again easily
// Will show 0 as the value of the bitmap
println!("Value of bitmap: {}", bitmap.to_usize());
// Let's do the same as above, but actually setting the values in the bitmap to something
bitmap |= BitmapArch::from(101);
// Will show ...1100101, where ... represents some number of padding 0's that depends on the architecture of the target
println!("Bitmap after OR-ing with 101: {}", bitmap);
// Set the 4th index (the 5th bit) to true. Can simply unwrap the result to ignore the warning,
//as we know for certain that 4 < 32
bitmap.set(4, true).unwrap();
// Will show that 117 (101 + 2^4) is the value of the bitmap
println!("Bitmap value: {}", bitmap.to_usize());
Implementations
Creates a new, empty Bitmap64
, and sets the desired index before returning.
When calling:
use fixed_bitmaps::BitmapArch;
let mut bitmap = BitmapArch::from_set(5);
This is equivalent to:
use fixed_bitmaps::BitmapArch;
let mut bitmap = BitmapArch::from(0);
bitmap.set(5, true);
Trait Implementations
Performs the +=
operation. Read more
Performs the +=
operation. Read more
Performs the &=
operation. Read more
Performs the &=
operation. Read more
Performs the |=
operation. Read more
Performs the |=
operation. Read more
Performs the ^=
operation. Read more
Performs the ^=
operation. Read more
Returns the “default value” for a type. Read more
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Performs the /=
operation. Read more
Performs the /=
operation. Read more
Performs the *=
operation. Read more
Performs the *=
operation. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Performs the -=
operation. Read more
Performs the -=
operation. Read more
Auto Trait Implementations
impl RefUnwindSafe for BitmapArch
impl Send for BitmapArch
impl Sync for BitmapArch
impl Unpin for BitmapArch
impl UnwindSafe for BitmapArch
Blanket Implementations
Mutably borrows from an owned value. Read more