Package org.apache.commons.collections4.bloomfilter

# Interface Hasher

All Known Implementing Classes:
  `EnhancedDoubleHasher`

public interface Hasher
A Hasher creates IndexProducer based on the hash implementation and the provided Shape.

Since:
  4.5

- ## Method Summary

  Modifier and Type
  Method
  Description
  `IndexProducer`
  `indices(Shape shape)`
  Creates an IndexProducer for this hasher based on the Shape.

- ## Method Details

  - ### indices

    IndexProducer indices(Shape shape)
    Creates an IndexProducer for this hasher based on the Shape.

    The `IndexProducer` will create indices within the range defined by the number of bits in the shape. The total number of indices will respect the number of hash functions per item defined by the shape. However the count of indices may not be a multiple of the number of hash functions if the implementation has removed duplicates.

    This IndexProducer must be deterministic in that it must return the same indices for the same Shape.

    No guarantee is made as to order of indices.

    Duplicates indices for a single item may be produced.

    Parameters:
      `shape` - the shape of the desired Bloom filter.
    Returns:
      the iterator of integers