hash_key
hash collection が key に
目的
HashMap/HashSetが key比較 と hash計算 を 1個 の capability として受 け取 れるようにします。現状 の言語仕様で multiple trait bound を書 けないため、Eq+Hashの collection用 capability を明示 します。
実装
- trait
HashKeyはclone/eq/hash32を要求 します。 - helper
hashkey_clone/hashkey_eq/hashkey_hash32が trait call を集約 します。
注意
eqとhash32は整合 している必要 があります。- custom key は
HashKeyを impl すれば map/set に載 せられます。
HashKey
hash collection が key に
hashkey_clone
HashKey trait
hashkey_eq
HashKey trait
hashkey_hash32
HashKey trait