# `Shardex.Pool`
[🔗](https://github.com/epinault/shardex/blob/v0.1.0/lib/shardex/pool.ex#L1)

One pool of a shard for a given role. `ref` is what callers receive
(a repo module, a registered name, ...). `meta` is adapter-specific.

# `t`

```elixir
@type t() :: %Shardex.Pool{
  adapter: module(),
  adapter_state: term(),
  child_spec: Supervisor.child_spec() | nil,
  meta: map(),
  ref: term(),
  role: atom(),
  status: Shardex.Shard.status()
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
