Skip to main content

vespertide_core/schema/
primary_key.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
4#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
5#[serde(rename_all = "snake_case")]
6pub struct PrimaryKeyDef {
7    #[serde(default)]
8    pub auto_increment: bool,
9}
10
11#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
12#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
13#[serde(rename_all = "snake_case", untagged)]
14pub enum PrimaryKeySyntax {
15    Bool(bool),
16    Object(PrimaryKeyDef),
17}