Annotates %Ash.Info.Manifest{} entrypoints with AshLua public surface data.
The manifest remains the API specification. AshLua stores extension-specific
callable path metadata under each entrypoint's config[:ash_lua].
Summary
Functions
Returns the resource/action tuples represented by the annotated manifest.
Returns the AshLua config for an annotated entrypoint.
Compatibility alias for find_entrypoint/2.
Returns the annotated entrypoint matching a dotted Lua callable path.
Generates the scoped Lua manifest for an AshLua.EvalActions resource.
Attaches AshLua surface metadata to an existing manifest.
Generates a manifest for an OTP app with AshLua surface metadata attached.
Deprecated compatibility alias for for_manifest/1.
Returns the Lua path segments for an annotated entrypoint.
Returns the dotted Lua path for an annotated entrypoint.
Types
Functions
@spec action_entrypoints(Ash.Info.Manifest.t()) :: [{module(), atom()}]
Returns the resource/action tuples represented by the annotated manifest.
@spec config(Ash.Info.Manifest.Entrypoint.t()) :: surface_config() | nil
Returns the AshLua config for an annotated entrypoint.
@spec find_action(Ash.Info.Manifest.t(), String.t()) :: {:ok, Ash.Info.Manifest.Entrypoint.t()} | :error
Compatibility alias for find_entrypoint/2.
@spec find_entrypoint(Ash.Info.Manifest.t(), String.t()) :: {:ok, Ash.Info.Manifest.Entrypoint.t()} | :error
Returns the annotated entrypoint matching a dotted Lua callable path.
@spec for_eval_resource(module()) :: {:ok, Ash.Info.Manifest.t()}
Generates the scoped Lua manifest for an AshLua.EvalActions resource.
@spec for_manifest(Ash.Info.Manifest.t()) :: Ash.Info.Manifest.t()
Attaches AshLua surface metadata to an existing manifest.
Domains with explicit lua do namespace ... end actions expose only those
configured actions. Domains without explicit surface actions retain the legacy
derived shape: <domain>.<resource>.<action>.
@spec for_otp_app( atom(), keyword() ) :: {:ok, Ash.Info.Manifest.t()}
Generates a manifest for an OTP app with AshLua surface metadata attached.
@spec from_manifest(Ash.Info.Manifest.t()) :: Ash.Info.Manifest.t()
Deprecated compatibility alias for for_manifest/1.
@spec path(Ash.Info.Manifest.Entrypoint.t()) :: [String.t()]
Returns the Lua path segments for an annotated entrypoint.
@spec path_string(Ash.Info.Manifest.Entrypoint.t()) :: String.t()
Returns the dotted Lua path for an annotated entrypoint.