# Trait core::hash::Hasher [−] [src]

    pub trait Hasher {
        fn finish(&self) -> u64;
        fn write(&mut self, bytes: &[u8]);

        fn write_u8(&mut self, i: u8) { ... }
        fn write_u16(&mut self, i: u16) { ... }
        fn write_u32(&mut self, i: u32) { ... }
        fn write_u64(&mut self, i: u64) { ... }
        fn write_usize(&mut self, i: usize) { ... }
        fn write_i8(&mut self, i: i8) { ... }
        fn write_i16(&mut self, i: i16) { ... }
        fn write_i32(&mut self, i: i32) { ... }
        fn write_i64(&mut self, i: i64) { ... }
        fn write_isize(&mut self, i: isize) { ... }
    }

A trait which represents the ability to hash an arbitrary stream of bytes.

## Required Methods

### `fn finish(&self) -> u64`

Completes a round of hashing, producing the output hash generated.

### `fn write(&mut self, bytes: &[u8])`

Writes some data into this `Hasher`

## Provided Methods

### `fn write_u8(&mut self, i: u8)`

Write a single `u8` into this hasher

### `fn write_u16(&mut self, i: u16)`

Write a single `u16` into this hasher.

### `fn write_u32(&mut self, i: u32)`

Write a single `u32` into this hasher.

### `fn write_u64(&mut self, i: u64)`

Write a single `u64` into this hasher.

### `fn write_usize(&mut self, i: usize)`

Write a single `usize` into this hasher.

### `fn write_i8(&mut self, i: i8)`

Write a single `i8` into this hasher.

### `fn write_i16(&mut self, i: i16)`

Write a single `i16` into this hasher.

### `fn write_i32(&mut self, i: i32)`

Write a single `i32` into this hasher.

### `fn write_i64(&mut self, i: i64)`

Write a single `i64` into this hasher.

### `fn write_isize(&mut self, i: isize)`

Write a single `isize` into this hasher.

## Implementors

- `impl Hasher for SipHasher`

# Help

## Keyboard Shortcuts

?
  Show this help dialog
S
  Focus the search field
⇤
  Move up in search results
⇥
  Move down in search results
⏎
  Go to active search result

## 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`)