|Branch|Status|
|------|------|
|master||
Rust Byte Swap lib.
Swap bytes using patterns and masks.
``` rust use bswp::pattern::{BytePattern, Locality, iter_swap};
let pattern = BytePattern::new(0x42, 0xFF); // replace byte by 0x42 let locality = Locality::new(2, 1); // replace odd bytes let swap = (pattern, locality); // swap odd bytes with 0x42
let source: [u8; 4] = [0x41, 0x41, 0x41, 0x41];
let swapped = iterswap(&swap, &source); // iterator on result
let swapped: Vec
``` rust use std::io::Cursor; use bswp::pattern::{BytePattern, Locality}; use bswp::Swap; use bswp::io::swap_io;
// in memory reader (implements Read
)
let mut reader: CursorWrite
)
let mut writer: Cursor
let swaps: &[Swap] = &[(BytePattern::new(0x42, 0xFF), Locality::new(2, 0))]; let swap = swapio(&mut reader, &mut writer, swaps); assert!(swap.isok()); asserteq!(swap.unwrap(), 4); // 4 bytes written asserteq!(writer.into_inner(), vec![0x42, 0x42, 0x42, 0x44]) ```
Please see the CHANGELOG for a release history.