View Source Chaperon.Actionable protocol (chaperon v0.3.1)
Protocol implemented by all valid measurable actions that can be performed
in a Chaperon.Session. All Actions implementing this protocol are found
within the Chaperon.Action module.
Link to this section Summary
Functions
Attempts to abort a Chaperon.Actionable within a Chaperon.Session and
returns the resulting Chaperon.Actionable and Chaperon.Session or a
Chaperon.Action.Error.
Attempts to run a Chaperon.Actionable within a Chaperon.Session and
returns the resulting session or a Chaperon.Action.Error.
Link to this section Types
@type abort_result() :: {:ok, t(), Chaperon.Session.t()} | error()
@type error() :: {:error, Chaperon.Action.Error.t()} | {:error, Chaperon.Session.Error.t()} | {:error, any()}
@type result() :: {:ok, Chaperon.Session.t()} | error()
@type t() :: term()
Link to this section Functions
@spec abort(t(), Chaperon.Session.t()) :: abort_result()
Attempts to abort a Chaperon.Actionable within a Chaperon.Session and
returns the resulting Chaperon.Actionable and Chaperon.Session or a
Chaperon.Action.Error.
@spec run(t(), Chaperon.Session.t()) :: result()
Attempts to run a Chaperon.Actionable within a Chaperon.Session and
returns the resulting session or a Chaperon.Action.Error.