Skip to content
  • Alex Crichton's avatar
    std: Stabilize the `hash` module · f83e23ad
    Alex Crichton authored
    This commit is an implementation of [RFC 823][rfc] which is another pass over
    the `std::hash` module for stabilization. The contents of the module were not
    entirely marked stable, but some portions which remained quite similar to the
    previous incarnation are now marked `#[stable]`. Specifically:
    
    [rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0823-hash-simplification.md
    
    * `std::hash` is now stable (the name)
    * `Hash` is now stable
    * `Hash::hash` is now stable
    * `Hasher` is now stable
    * `SipHasher` is now stable
    * `SipHasher::new` and `new_with_keys` are now stable
    * `Hasher for SipHasher` is now stable
    * Many `Hash` implementations are now stable
    
    All other portions of the `hash` module remain `#[unstable]` as they are less
    commonly used and were recently redesigned.
    
    This commit is a breaking change due to the modifications to the `std::hash` API
    and more details can be found on the [RFC][rfc].
    
    Closes #22467
    [breaking-change]
    f83e23ad