# Package com.tomgibara.crinch.hashing

Hashing utilities and interfaces for generating and managing hash values.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  Hash<T> | Implementations of this interface can generate one hash value for a given object.

- Class Summary
  Class | Description
  --- | ---
  HashRange | Records the range of values that a hash value may take.
  PerfectStringHash | A "minimal perfect hash" for Strings.

## Package com.tomgibara.crinch.hashing Description

Hashing utilities and interfaces for generating and managing hash values.

This package provides:

- `Hash` - Interface for generating hash values from objects
- `HashRange` - Class defining a range of possible hash values
- `PerfectStringHash` - Minimal perfect hash implementation for String arrays

The hashing utilities support both general-purpose hashing through the Hash interface and specialized perfect hashing for known string sets through PerfectStringHash. HashRange provides bounds checking and range validation for hash values.