Behaviour for PubSub adapter implementations.
Adapters encapsulate subscription and broadcast mechanics for a concrete
backend (for example local Registry or Phoenix PubSub).
Summary
Types
@type state() :: term()
Callbacks
@callback broadcast(state(), String.t(), term()) :: :ok | {:error, ASM.Error.t() | term()}
@callback init(keyword()) :: {:ok, state()} | {:error, ASM.Error.t() | term()}
@callback subscribe(state(), String.t()) :: :ok | {:error, ASM.Error.t() | term()}