5 unstable releases
Uses old Rust 2015
0.3.0 | Nov 17, 2021 |
---|---|
0.2.0 | Nov 14, 2021 |
0.1.2 | Nov 14, 2021 |
0.1.1 | Nov 14, 2021 |
0.1.0 | Nov 12, 2021 |
#1422 in Math
14KB
213 lines
dotbits
unsigned int <-> Vec<bool>, plus helper functions
dotbits is a rust library that simplifies bit manipulation. Its primary feature is the .bits()
function, which converts any unsigned integer type (u8
, u16
, u32
, u64
, u128
, usize
) into a Vec<bool>
. It also adds certain helper functions over Vec<bool>
.
WARNING: This crate is currently in the rapid iteration phase, and should not be considered stable. Certain methods may get added or removed very quickly between versions - use this crate at your own risk!
Usage
Add the following to your Cargo.toml
:
[dependencies]
dotbits = "0.3"
Examples
Bit shifts using negative numbers:
use dotbits::BitManip;
assert_eq!(24u32.signed_left_shift(2), 24u32 << 2);
assert_eq!(24u32.signed_left_shift(-2), 24u32 >> 2);
assert_eq!(24u32.signed_right_shift(2), 24u32 >> 2);
assert_eq!(24u32.signed_right_shift(-2), 24u32 << 2);
License
dotbits is distributed under the terms of both the MIT license and the Apache License (Version 2.0).