Skip to main content

persistant_relational/
lib.rs

1// SPDX-License-Identifier: MIT OR Apache-2.0
2//! PersistAnt's relational kind: a **deliberately small** trait, no driver.
3//!
4//! `docs/DESIGN-KINDS.md` §3 rule 4 and D1 (C+): the trait runs a statement with parameters,
5//! begins a transaction, and reports the dialect and server version. It is not a query builder or
6//! a row mapper; a program that wants its own SQL checked at compile time (Humboldt's
7//! `sqlx::query!`) uses the concrete driver handle the driver crate hands out, not this trait. The
8//! trait exists so the key-value adapter, the capability matrix and migrations have one thing to
9//! call.
10//!
11//! Growth toward statement construction would turn this into Option B (§4.2) and carry its leaks;
12//! resist it.
13
14mod backend;
15pub mod conformance;
16mod error;
17mod secret;
18mod value;
19
20pub use backend::{RelationalBackend, RelationalTx};
21pub use error::RelError;
22pub use secret::{ConnectionSecret, Redacted};
23pub use value::{Dialect, Row, Value};