Absinthe.Phase behaviour (absinthe v1.6.6) View Source

Behaviour for Absinthe Phases.

A phase takes an Absinthe.Blueprint document and returns another blueprint document. All validation, resolution, and result building happens via phases. See Absinthe.Pipeline for information on how to run phases. See the code under this namespace for information on individual phases.

Link to this section Summary

Link to this section Types

Specs

result_t() ::
  {:ok, any()}
  | {:jump, any(), t()}
  | {:insert, any(), t() | [t()]}
  | {:replace, any(), t() | [t()]}
  | {:error, any()}
  | {:record_phases, any(), (any(), any() -> any())}

Specs

t() :: module()

Link to this section Callbacks

Specs

run(any(), any()) :: result_t()

Link to this section Functions

Specs

put_error(Absinthe.Blueprint.node_t(), Absinthe.Phase.Error.t()) ::
  Absinthe.Blueprint.node_t()