Search documentation of ash

# Ash.Resource.ManualDestroy behaviour (ash v3.4.71)

View Source

A module to implement manual destroy actions.

Note that in the returns of these functions you must return the destroyed record or records.

# Summary

## Callbacks

bulk_destroy(changesets, opts, context)
destroy(changeset, opts, context)

# Callbacks

# bulk_destroy(changesets, opts, context)

(optional)

    @callback bulk_destroy(
      changesets :: Enumerable.t(Ash.Changeset.t()),
      opts :: Keyword.t(),
      context :: Ash.Resource.ManualDestroy.Context.t()
    ) :: [
      ok: Ash.Resource.record(),
      error: Ash.Error.t(),
      notifications: [Ash.Notifier.Notification.t()]
    ]

# destroy(changeset, opts, context)

    @callback destroy(
      changeset :: Ash.Changeset.t(),
      opts :: Keyword.t(),
      context :: Ash.Resource.ManualDestroy.Context.t()
    ) ::
      {:ok, Ash.Resource.record()}
      | {:ok, Ash.Resource.record(), [Ash.Notifier.Notification.t()]}
      | {:error, term()}