Kira v0.1.0 Kira.BranchState

Link to this section Summary

Link to this section Types

Link to this type branches()
branches() :: %{required(atom()) => Kira.Branch.t()}
Link to this type errors()
errors() :: [{any(), DateTime.t()}]
Link to this type resolved()
resolved() :: any()
Link to this type t()
t() :: %Kira.BranchState{
  awaiting: MapSet.t(atom()),
  awaiting_unapply: MapSet.t(atom()),
  blocking: MapSet.t(atom()),
  blocking_unapply: MapSet.t(atom()),
  branch: Kira.Branch.t(),
  task: task()
}
Link to this type task()
task() ::
  :not_started
  | {:running_apply, pid(), errors()}
  | {:running_apply_retry, pid(), errors()}
  | {:running_unapply, pid(), resolved(), errors()}
  | {:running_unapply_retry, pid(), resolved(), errors()}
  | {:failed, errors()}
  | {:done_applied, any()}
  | :done_unapplied

Link to this section Functions

Link to this function apply_ready?(state)
apply_ready?(state :: t()) :: boolean()
Link to this function create(branch, branches)
create(branch :: Kira.Branch.t(), branches :: branches()) :: t()
Link to this function get_completed(t)
get_completed(branch :: t()) :: Kira.Util.result(any())
Link to this function get_errors(branch_state)
Link to this function get_task_pid(branch_state)
get_task_pid(branch :: t()) :: Kira.Util.result(pid())
Link to this function is_complete(t)
is_complete(branch :: t()) :: boolean()
Link to this function set_task(branch, task)
set_task(branch :: t(), task :: task()) :: t()
Link to this function unapply_ready?(state)
unapply_ready?(state :: t()) :: boolean()