Amnesia.Fragment.Hash behaviour (nuamnesia v0.3.0)

This module provides a behavior to implement a different fragment hashing algorithm.

Summary

Callbacks

Add a fragment returning the new fragment numbers and state.

Delete a fragment returning the new fragment numbers and state.

Initialize the hash state.

Convert a key to a fragment number.

Convert a match_spec to fragment numbers.

Callbacks

add_frag(any)

@callback add_frag(any()) :: {any(), [integer()], [integer()]}

Add a fragment returning the new fragment numbers and state.

del_frag(any)

@callback del_frag(any()) :: {any(), [integer()], [integer()]}

Delete a fragment returning the new fragment numbers and state.

init_state(atom, any)

@callback init_state(atom(), any()) :: any()

Initialize the hash state.

key_to_frag_number(any, any)

@callback key_to_frag_number(any(), any()) :: integer()

Convert a key to a fragment number.

match_spec_to_frag_numbers(any, any)

@callback match_spec_to_frag_numbers(any(), any()) :: [integer()]

Convert a match_spec to fragment numbers.