| Crates.io | dotbits |
| lib.rs | dotbits |
| version | 0.3.0 |
| created_at | 2021-11-12 13:56:12.146658+00 |
| updated_at | 2021-11-17 13:31:53.620095+00 |
| description | unsigned int <-> Vec |
| homepage | |
| repository | https://github.com/ProspectPyxis/dotbits |
| max_upload_size | |
| id | 480944 |
| size | 28,128 |
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!
Add the following to your Cargo.toml:
[dependencies]
dotbits = "0.3"
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);
dotbits is distributed under the terms of both the MIT license and the Apache License (Version 2.0).