prax_query/inputs/mod.rs
1//! Typed input shapes for the Prisma-style DSL.
2//!
3//! This module holds the trait spine (`WhereInput`, `IncludeInput`, …),
4//! the reusable scalar filter wrappers (`StringFilter`, `IntFilter`, …),
5//! the relation filter wrappers (`ListRelationFilter`,
6//! `SingleRelationFilter`), the scalar update wrappers
7//! (`IntFieldUpdate`, `StringFieldUpdate`, …), and the per-operation
8//! containers (`FindManyArgs`, `CreateArgs`, …).
9//!
10//! Codegen (phase 2) emits per-model concrete structs that implement
11//! these traits and use these wrappers. The operation macros (phase 3+)
12//! emit token streams that construct these inputs and feed them to
13//! existing `*Operation` builders via `with_*_input` extension methods.
14//!
15//! Layer-1 callers can also build these inputs by hand — they form the
16//! "third interface" alongside the macro DSL and the existing fluent
17//! builder.
18
19pub mod args;
20pub mod relation;
21pub mod scalar;
22pub mod scalar_update;
23pub mod traits;
24pub mod write_payload;
25
26pub use args::*;
27pub use relation::*;
28pub use scalar::*;
29pub use scalar_update::*;
30pub use traits::*;
31pub use write_payload::*;