Spark DSL transformer that wires up resolve_argument declarations.
For every resolve_argument :name, from_path: [...] declaration:
- Validates the path at compile time (intermediates are belongs_to, leaf is an attribute).
- Validates that at least one scope references
^arg(:name)in its resolved filter (rejecting dead declarations). - For every targeted write action (
:create,:update,:destroy, or the explicit:for_actionslist), injects:- an
argument :name, <type>, allow_nil?: truewith the type inferred from the leaf attribute (if the action does not already declare it) - a
change {AshGrant.Changes.ResolveArgument, [name:, path:, scopes_needing:]}withscopes_needingcomputed at compile time
- an
Summary
Functions
Callback implementation for Spark.Dsl.Transformer.after_compile?/0.
Functions
Callback implementation for Spark.Dsl.Transformer.after_compile?/0.