Process-local facade for interacting with a Solve app.
Summary
Functions
Reads one direct {pid, message} event tuple from a lookup item.
Builds a direct {pid, message} event tuple with a fixed payload for a lookup item.
Types
@type target() :: Solve.controller_target()
Callbacks
Functions
@spec collection(atom()) :: Solve.Collection.t(map())
@spec collection(GenServer.server() | nil, atom()) :: Solve.Collection.t(map())
@spec dispatch(GenServer.server() | nil, target(), atom(), term()) :: :ok
Reads one direct {pid, message} event tuple from a lookup item.
This is a convenience wrapper over events(controller)[event_name].
Builds a direct {pid, message} event tuple with a fixed payload for a lookup item.
@spec events(map() | nil | Solve.Collection.t(any())) :: map() | nil
@spec handle_message(Solve.Message.t()) :: map()
@spec solve(GenServer.server() | nil, target()) :: map() | nil