1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
use generic_fletcher::Fletcher; use generic_fletcher::FletcherSum; pub type Fletcher64 = Fletcher<u64, u32>; impl FletcherSum<u32> for u64 { fn default_value() -> Self { 0x00000000ffffffff } fn max_chunk_size() -> usize { 92680 } fn combine(lower: &Self, upper: &Self) -> Self { lower | (upper << 32) } fn reduce(self) -> Self { (self & 0xffffffff) + (self >> 32) } }