Struct std::hash::BuildHasherDefault 1.7.0[−][src]
pub struct BuildHasherDefault<H>(_);
Expand description
用于为实现 Hasher 和 Default 的类型创建默认的 BuildHasher 实例。
BuildHasherDefault<H> 当类型 H 实现 Hasher 和 Default,并且需要相应的 BuildHasher 实例,但未定义任何实例时,可以使用。
任何 BuildHasherDefault 都是 zero-sized。可以用 default 创建。
当将 BuildHasherDefault 与 HashMap 或 HashSet 一起使用时,不需要这样做,因为它们自己实现了适当的 Default 实例。
Examples
使用 BuildHasherDefault 指定用于的自定义 BuildHasher
HashMap:
use std::collections::HashMap; use std::hash::{BuildHasherDefault, Hasher}; #[derive(Default)] struct MyHasher; impl Hasher for MyHasher { fn write(&mut self, bytes: &[u8]) { // 您的哈希算法就在这里! unimplemented!() } fn finish(&self) -> u64 { // 您的哈希算法就在这里! unimplemented!() } } type MyBuildHasher = BuildHasherDefault<MyHasher>; let hash_map = HashMap::<u32, u32, MyBuildHasher>::default();Run