View Source Reactor.Dsl.Step (reactor v0.10.1)

The struct used to store step DSL entities.

See Reactor.step.

Summary

Types

@type t() :: %Reactor.Dsl.Step{
  __identifier__: any(),
  arguments: [Reactor.Dsl.Argument.t()],
  async?: boolean(),
  compensate:
    nil
    | (any(), Reactor.inputs(), Reactor.context() ->
         :ok | :retry | {:continue, any()}),
  impl: module() | {module(), keyword()},
  max_retries: non_neg_integer() | :infinity,
  name: atom(),
  run:
    nil
    | (Reactor.inputs(), Reactor.context() ->
         {:ok, any()}
         | {:ok, any(), [Reactor.Step.t()]}
         | {:halt | :error, any()}),
  transform: nil | (any() -> any()),
  undo:
    nil
    | (any(), Reactor.inputs(), Reactor.context() ->
         :ok | :retry | {:error, any()})
}