easy_sql/markers/driver/
mod.rs1use easy_macros::always_context;
2
3use crate::Driver;
4
5pub mod functions;
6pub mod operators;
7
8#[always_context]
9#[diagnostic::on_unimplemented(
13 message = "Driver `{Self}` does not support auto-increment columns when the table uses a composite primary key. Remove #[sql(auto_increment)] or use a single-column primary key for this driver."
14)]
15pub trait SupportsAutoIncrementCompositePrimaryKey: Driver {}
16
17#[always_context]
18#[diagnostic::on_unimplemented(
22 message = "Driver `{Self}` requires a primary key for tables. Add #[sql(primary_key)] to at least one field."
23)]
24pub trait AllowsNoPrimaryKey: Driver {}
25
26#[always_context]
27#[diagnostic::on_unimplemented(
31 message = "Driver `{Self}` does not support multiple auto-increment columns in the same table. Remove #[sql(auto_increment)] from all but one column."
32)]
33pub trait SupportsMultipleAutoIncrementColumns: Driver {}