# keyby An attribute macro for hashing on a specific field of a struct. # Example ```rust #[macro_use] extern crate keyby; use std::collections::hash_map::DefaultHasher; #[key_by(id)] pub struct Item { id: u64, price: u32, } fn main() { let i1 = Item { id: 1, price: 20 }; let i2 = Item { id: 2, price: 150 }; let i3 = Item { id: 1, price: 50 }; assert_eq!(calc_hash(&i1), calc_hash(&i3)); assert!(calc_hash(&i1) != calc_hash(&i2)); } fn calc_hash(t: &T) -> u64 { use std::hash::Hasher; let mut s = DefaultHasher::new(); t.hash(&mut s); s.finish() } ```