Ash.Info.Manifest.Action (ash v3.25.1)

Copy Markdown View Source

Represents a resource action in the API specification.

inputs is the unified list of action inputs — action arguments and any attributes the action accepts are normalized into a single list of %Ash.Info.Manifest.Argument{} entries. Each entry's allow_nil? and has_default? reflect the action's effective semantics (e.g. an accepted attribute named in require_attributes will have allow_nil?: false; one named in allow_nil_input will have allow_nil?: true).

Summary

Types

action_type()

@type action_type() :: :read | :create | :update | :destroy | :action

t()

@type t() :: %Ash.Info.Manifest.Action{
  custom: map(),
  description: String.t() | nil,
  get?: boolean(),
  inputs: [Ash.Info.Manifest.Argument.t()],
  metadata: [Ash.Info.Manifest.Metadata.t()],
  name: atom(),
  pagination: Ash.Info.Manifest.Pagination.t() | nil,
  primary?: boolean(),
  returns: Ash.Info.Manifest.Type.t() | nil,
  type: action_type()
}