GenDurable.Context (gen_durable v0.1.2)

Copy Markdown View Source

The context handed to GenDurable.FSM.step/2 and GenDurable.FSM.handle/2.

state is the FSM's loaded state (a struct when the FSM declares state:, otherwise a plain string-keyed map). signals holds the instance inbox at the moment the step started (empty for handle/2). childs holds this instance's children (spec §11) — populated when a parent wakes from schedule_childs, empty otherwise. See GenDurable.FSM.

Summary

Types

t()

@type t() :: %GenDurable.Context{
  attempt: non_neg_integer(),
  childs: [
    %{
      id: integer(),
      fsm: String.t(),
      status: String.t(),
      state: map(),
      result: map() | nil,
      last_error: String.t() | nil
    }
  ],
  fsm: String.t(),
  fsm_version: integer(),
  id: integer(),
  signals: [%{id: integer(), name: String.t(), payload: map()}],
  state: term(),
  step: String.t()
}