sea_schema/postgres/def/
schema.rs

1#[cfg(feature = "with-serde")]
2use serde::{Deserialize, Serialize};
3
4use super::*;
5
6#[derive(Clone, Debug, PartialEq)]
7#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
8pub struct Schema {
9    pub schema: String,
10    pub tables: Vec<TableDef>,
11}
12
13#[derive(Clone, Debug, PartialEq)]
14#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))]
15pub struct TableDef {
16    pub info: TableInfo,
17    pub columns: Vec<ColumnInfo>,
18
19    pub check_constraints: Vec<Check>,
20    pub not_null_constraints: Vec<NotNull>,
21    pub unique_constraints: Vec<Unique>,
22    pub primary_key_constraints: Vec<PrimaryKey>,
23    pub reference_constraints: Vec<References>,
24    pub exclusion_constraints: Vec<Exclusion>,
25    // FIXME: Duplication? TableInfo also have of_type
26    // pub of_type: Option<Type>,
27    // TODO:
28    // pub inherets: Vec<String>,
29}