# ex_ring_ring v0.1.0 - Table of Contents

> Consistent Hash Ring implementation in Elixir

## Modules

- [ExRingRing](ExRingRing.md): ExRingRing - Consistent Hash Ring implementation in Elixir.
- [ExRingRing.Application.Services.HashRingService](ExRingRing.Application.Services.HashRingService.md): Application service for hash ring operations.
- [ExRingRing.Application.UseCases.AddNodes](ExRingRing.Application.UseCases.AddNodes.md): Use case for adding nodes to a hash ring.

- [ExRingRing.Application.UseCases.CollectNodes](ExRingRing.Application.UseCases.CollectNodes.md): Use case for collecting multiple nodes for an item (for replication).

- [ExRingRing.Application.UseCases.CreateRing](ExRingRing.Application.UseCases.CreateRing.md): Use case for creating a new hash ring.

- [ExRingRing.Application.UseCases.FindNode](ExRingRing.Application.UseCases.FindNode.md): Use case for finding a node for an item in the hash ring.

- [ExRingRing.Application.UseCases.RemoveNodes](ExRingRing.Application.UseCases.RemoveNodes.md): Use case for removing nodes from a hash ring.

- [ExRingRing.Domain.Entities.Node](ExRingRing.Domain.Entities.Node.md): Represents a node in the consistent hash ring.
- [ExRingRing.Domain.Entities.Ring](ExRingRing.Domain.Entities.Ring.md): Entity representing a consistent hash ring.
- [ExRingRing.Domain.Services.HashAlgorithm](ExRingRing.Domain.Services.HashAlgorithm.md): Domain service behavior for hash algorithms.
- [ExRingRing.Domain.Services.HashRing](ExRingRing.Domain.Services.HashRing.md): Domain service behavior for hash ring operations.
- [ExRingRing.Domain.ValueObjects.HashConfig](ExRingRing.Domain.ValueObjects.HashConfig.md): Value object representing hash ring configuration.

- [ExRingRing.Domain.ValueObjects.VirtualNode](ExRingRing.Domain.ValueObjects.VirtualNode.md): Value object representing a virtual node in the hash ring.
- [ExRingRing.Infrastructure.HashAlgorithms](ExRingRing.Infrastructure.HashAlgorithms.md): Hash algorithms registry and factory.

- [ExRingRing.Infrastructure.HashAlgorithms.CRC32](ExRingRing.Infrastructure.HashAlgorithms.CRC32.md): CRC32 hash algorithm implementation.

- [ExRingRing.Infrastructure.HashAlgorithms.MD5](ExRingRing.Infrastructure.HashAlgorithms.MD5.md): MD5 hash algorithm implementation.

- [ExRingRing.Infrastructure.HashAlgorithms.PHash2](ExRingRing.Infrastructure.HashAlgorithms.PHash2.md): Erlang phash2 hash algorithm implementation.

- [ExRingRing.Infrastructure.HashAlgorithms.SHA](ExRingRing.Infrastructure.HashAlgorithms.SHA.md): SHA-1 hash algorithm implementation.

- [ExRingRing.Infrastructure.HashAlgorithms.SHA256](ExRingRing.Infrastructure.HashAlgorithms.SHA256.md): SHA-256 hash algorithm implementation.

- [ExRingRing.Infrastructure.HashRing.Base](ExRingRing.Infrastructure.HashRing.Base.md): Base module for hash ring implementations.
- [ExRingRing.Infrastructure.HashRing.Dynamic](ExRingRing.Infrastructure.HashRing.Dynamic.md): Dynamic hash ring implementation using balanced tree (gb_trees).
- [ExRingRing.Infrastructure.HashRing.Static](ExRingRing.Infrastructure.HashRing.Static.md): Static hash ring implementation using sorted array (tuple).

