about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSteve Klabnik <steve@steveklabnik.com>2016-03-10 14:01:53 +0300
committerSteve Klabnik <steve@steveklabnik.com>2016-03-10 14:01:53 +0300
commit3e764efef73baa69ce3f8643b96aba1a4155b438 (patch)
tree445c99ef4b9bb6ddb4e200fdde138fc4183904ad
parent09e08bac9355179476b30fce4f0f98c0b395e1c8 (diff)
parent46dc35e4772e892bf1be04fa01767e0ec00ffe2f (diff)
downloadrust-3e764efef73baa69ce3f8643b96aba1a4155b438.tar.gz
rust-3e764efef73baa69ce3f8643b96aba1a4155b438.zip
Rollup merge of #32091 - dirk:dirk/siphasher-docs-clarification, r=alexcrichton
Clarify documentation of hash::SipHasher

The docs were making assertions/recommendations they shouldn't have. This clarifies them and adds some helpful links.

Fixes #32043.

r? @sfackler
-rw-r--r--src/libcore/hash/sip.rs18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/libcore/hash/sip.rs b/src/libcore/hash/sip.rs
index 722d77a8a11..342071f1b51 100644
--- a/src/libcore/hash/sip.rs
+++ b/src/libcore/hash/sip.rs
@@ -19,15 +19,17 @@ use super::Hasher;
 ///
 /// See: http://131002.net/siphash/
 ///
-/// Consider this as a main "general-purpose" hash for all hashtables: it
-/// runs at good speed (competitive with spooky and city) and permits
-/// strong _keyed_ hashing. Key your hashtables from a strong RNG,
-/// such as `rand::Rng`.
+/// This is currently the default hashing function used by standard library
+/// (eg. `collections::HashMap` uses it by default).
 ///
-/// Although the SipHash algorithm is considered to be cryptographically
-/// strong, this implementation has not been reviewed for such purposes.
-/// As such, all cryptographic uses of this implementation are strongly
-/// discouraged.
+/// SipHash is a general-purpose hashing function: it runs at a good
+/// speed (competitive with Spooky and City) and permits strong _keyed_
+/// hashing. This lets you key your hashtables from a strong RNG, such as
+/// [`rand::os::OsRng`](https://doc.rust-lang.org/rand/rand/os/struct.OsRng.html).
+///
+/// Although the SipHash algorithm is considered to be generally strong,
+/// it is not intended for cryptographic purposes. As such, all
+/// cryptographic uses of this implementation are _strongly discouraged_.
 #[stable(feature = "rust1", since = "1.0.0")]
 pub struct SipHasher {
     k0: u64,