Crate bit_manager [−] [src]
A crate for reading and writing bits from various streams
Writing
extern crate bit_manager; use bit_manager::BitWriter; let mut writer = BitWriter::new(Vec::new()); writer.write_bits(&[false, true, false, false, true, false, false, false]).unwrap(); writer.write(b'i').unwrap(); assert_eq!(writer.into_inner().unwrap(), b"Hi");
Reading
extern crate bit_manager; use bit_manager::BitReader; let mut reader = BitReader::new(&b"Hi"[..]); let mut h = [false; 8]; reader.read_bits(&mut h).unwrap(); assert_eq!(h, [false, true, false, false, true, false, false, false]); assert_eq!(reader.read_byte().unwrap(), b'i');
Modules
conversions |
Provides converters for reading and writing values using stucts |
prelude |
The bit manager prelude |
Structs
BitBuffer |
A buffer that stores up to 64 bits and remembers how many are being stored |
BitReader |
A wrapper for any type implementing |
BitWriter |
A wrapper for any type implementing |
Enums
Error |
An enum for possible errors when reading and writing bits |
Precision |
An enum that represents how a stream is terminated |
Traits
BitReadable |
A trait for reading a value |
BitWritable |
A trait for writing a value |
Type Definitions
Result |
A specialized Result type for bit I/O operations |