Crate endian_hasher [−] [src]
These simple wrapper types for Hasher
change the endianness
used when hashing primitive numeric types.
Examples
use std::collections::hash_map::DefaultHasher; use std::hash::Hasher; use endian_hasher::*; assert_eq!( { let mut h1 = HasherToLE(DefaultHasher::new()); h1.write_i16(-3); h1.finish() }, { let mut h0 = DefaultHasher::new(); h0.write_i16( i16::to_le(-3) ); h0.finish() } ); assert_eq!( { let mut h1 = HasherToBE(DefaultHasher::new()); h1.write_u32(79); h1.finish() }, { let mut h0 = DefaultHasher::new(); h0.write_u32( 79u32.to_be() ); h0.finish() } ); assert_eq!( { let mut h1 = HasherSwapBytes(DefaultHasher::new()); h1.write_u64(0x12345678); h1.finish() }, { let mut h0 = DefaultHasher::new(); h0.write_u64( u64::swap_bytes(0x12345678) ); h0.finish() } );
Structs
HasherFromBE |
Apply a primitive numeric type's |
HasherFromLE |
Apply a primitive numeric type's |
HasherSwapBytes |
Apply a primitive numeric type's |
HasherToBE |
Apply a primitive numeric type's |
HasherToLE |
Apply a primitive numeric type's |