# `Drafter.TableOwner`
[🔗](https://github.com/jaman/drafter/blob/main/lib/drafter/registry/table_owner.ex#L1)

Owns the framework's shared ETS tables.

The tables listed by `owned/0` are created when this process starts and live for
the lifetime of the application. A module's own `create/0` is a no-op once its
table exists, so calling it is safe but unnecessary.

# `child_spec`

Returns a specification to start this module under a supervisor.

See `Supervisor`.

# `owned`

```elixir
@spec owned() :: [module()]
```

The modules whose tables this process owns.

# `start_link`

```elixir
@spec start_link(keyword()) :: GenServer.on_start()
```

---

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