std::ptr::hash - Rust
Description: API documentation for the Rust `hash` fn in crate `std`.
Keywords: rust, rustlang, rust-lang, hash

# [−][src]Function std::ptr::hash

    pub fn hash<T, S>(hashee: *const T, into: &mut S) where
        S: Hasher,
        T: ?Sized,

🔬 This is a nightly-only experimental API. (`ptr_hash` #56286)

newly added

Hash a raw pointer.

This can be used to hash a `&T` reference (which coerces to `*const T` implicitly) by its address rather than the value it points to (which is what the `Hash for &T` implementation does).

# Examples

    #![feature(ptr_hash)]
    use std::collections::hash_map::DefaultHasher;
    use std::hash::{Hash, Hasher};
    use std::ptr;

    let five = 5;
    let five_ref = &five;

    let mut hasher = DefaultHasher::new();
    ptr::hash(five_ref, &mut hasher);
    let actual = hasher.finish();

    let mut hasher = DefaultHasher::new();
    (five_ref as *const i32).hash(&mut hasher);
    let expected = hasher.finish();

    assert_eq!(actual, expected);Run

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g., `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g., `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g., `str,u8` or `String,struct:Vec,test`)