# hashes.xxh64

> A module of hashes's API.

XXH64 per https://github.com/Cyan4973/xxHash/blob/dev/doc/xxhash_spec.md.

Parquet split-block bloom filters hash column values with XXH64 seed 0.

## Structs

### `Xxh64`

```mojo
struct Xxh64
```

Incremental XXH64. `update` may be called any number of times before `finish`.

Implements: `Copyable`, `Movable`

Fields:

- `seed: UInt64`
- `total_len: UInt64`
- `v1: UInt64`
- `v2: UInt64`
- `v3: UInt64`
- `v4: UInt64`
- `buf: List[UInt8]`

#### `__init__`

```mojo
def __init__(out self, seed: UInt64 = UInt64(0))
```

#### `update`

```mojo
def update(mut self, data: Span[UInt8])
```

#### `finish`

```mojo
def finish(self) -> UInt64
```

## Functions

### `xxh64`

```mojo
def xxh64(data: Span[UInt8], seed: UInt64 = UInt64(0)) -> UInt64
```
