Introspection helpers for the Ash DynamoDB data layer.
These functions are thin wrappers around the resource DSL configuration.
Summary
Functions
Global secondary index definitions (list of %SecondaryIndex{type: :global} structs).
Local secondary index definitions (list of %SecondaryIndex{type: :local} structs).
Partition (hash) key attribute name.
Sort (range) key attribute name, if any.
Table name for the resource, defaulting to the underscored module name.
Functions
@spec global_secondary_indexes(Ash.Resource.t() | Spark.Dsl.t()) :: [ AshDynamo.DataLayer.SecondaryIndex.t() ]
Global secondary index definitions (list of %SecondaryIndex{type: :global} structs).
@spec local_secondary_indexes(Ash.Resource.t() | Spark.Dsl.t()) :: [ AshDynamo.DataLayer.SecondaryIndex.t() ]
Local secondary index definitions (list of %SecondaryIndex{type: :local} structs).
@spec partition_key(Ash.Resource.t() | Spark.Dsl.t()) :: atom() | nil
Partition (hash) key attribute name.
@spec sort_key(Ash.Resource.t() | Spark.Dsl.t()) :: atom() | nil
Sort (range) key attribute name, if any.
@spec table(Ash.Resource.t() | Spark.Dsl.t()) :: String.t()
Table name for the resource, defaulting to the underscored module name.