| 1 | //! A stable hashing algorithm used by rustc |
| 2 | |
| 3 | #![cfg_attr (feature = "nightly" , feature(hasher_prefixfree_extras))] |
| 4 | #![deny (clippy::missing_safety_doc)] |
| 5 | #![deny (unsafe_op_in_unsafe_fn)] |
| 6 | #![deny (unreachable_pub)] |
| 7 | |
| 8 | mod int_overflow; |
| 9 | mod sip128; |
| 10 | mod stable_hasher; |
| 11 | |
| 12 | /// Hashers collection |
| 13 | pub mod hashers { |
| 14 | #[doc (inline)] |
| 15 | pub use super::sip128::{SipHasher128, SipHasher128Hash}; |
| 16 | |
| 17 | /// Stable 128-bits Sip Hasher |
| 18 | /// |
| 19 | /// [`StableHasher`] version of [`SipHasher128`]. |
| 20 | /// |
| 21 | /// [`StableHasher`]: super::StableHasher |
| 22 | pub type StableSipHasher128 = super::StableHasher<SipHasher128>; |
| 23 | } |
| 24 | |
| 25 | #[doc (inline)] |
| 26 | pub use stable_hasher::StableHasher; |
| 27 | |
| 28 | #[doc (inline)] |
| 29 | pub use stable_hasher::FromStableHash; |
| 30 | |
| 31 | #[doc (inline)] |
| 32 | pub use stable_hasher::ExtendedHasher; |
| 33 | |
| 34 | #[doc (inline)] |
| 35 | pub use hashers::{SipHasher128Hash, StableSipHasher128}; |
| 36 | |