# ash_referential_actions v0.1.0 - Table of Contents

> Explicit cascade, restrict, nilify, and do-nothing semantics for Ash relationships.

## Pages

- [AshReferentialActions](readme.md)

## Modules

- [AshReferentialActions](AshReferentialActions.md): Declares referential actions for Ash relationships.
- [AshReferentialActions.Archival](AshReferentialActions.Archival.md): Applies AshReferentialActions semantics to soft destroys implemented by AshArchival.
- [AshReferentialActions.Changes.EnsureNotRestricted](AshReferentialActions.Changes.EnsureNotRestricted.md): Runtime guard added to every destroy action of a resource that declares
`restrict_has_many/has_one`: the destroy (hard delete, or archive when the resource is
archival) is rejected while live restricting records exist.
- [AshReferentialActions.Changes.EnsureTargetLive](AshReferentialActions.Changes.EnsureTargetLive.md): Runtime guard added to every create and update action of an
resource that declares `restrict` or `nilify`: writing the foreign key is rejected
unless the target exists and is live.
- [AshReferentialActions.Info](AshReferentialActions.Info.md): Introspection helpers for AshReferentialActions.
- [AshReferentialActions.Postgres](AshReferentialActions.Postgres.md): Applies AshReferentialActions semantics to PostgreSQL foreign keys.

