A SIMD implementation of the [Fletcher's checksum] algorithm.
std::simd
, which currently requires nightly.std::simd
.multiversion
] crate.```rust use byteorder::{ByteOrder, LittleEndian}; use fletcher_simd::Fletcher128;
fn main() { const DATA: &str = "abcdefgh"; let mut fletcher = Fletcher128::new();
// Read bytes in little endian. Endianness matters!
fletcher.update_with_iter(
DATA.as_bytes()
.chunks(8)
.map(|chunk| LittleEndian::read_u64(chunk)),
);
assert_eq!(fletcher.value(), 0x68676665646362616867666564636261);
} ```