Skip to main content

vespertide_core/
lib.rs

1//! Core data structures for vespertide schema definition and migration planning.
2//!
3//! - [`TableDef`], [`ColumnDef`]: schema model
4//! - [`MigrationAction`], [`MigrationPlan`]: typed migration operations
5//! - [`MigrationError`]: runtime migration error type
6
7pub mod action;
8#[cfg(feature = "arbitrary")]
9pub mod arbitrary;
10pub mod migration;
11pub mod schema;
12
13pub use action::{MigrationAction, MigrationPlan, NarrowingStrategy};
14pub use migration::{MigrationError, MigrationOptions};
15pub use schema::{
16    CheckViolationStrategy, ColumnDef, ColumnName, ColumnType, ComplexColumnType, ConstraintKind,
17    DefaultValue, EnumValues, ForeignKeyOrphanStrategy, IndexDef, IndexName, KeepPolicy, NumValue,
18    PrimaryKeyAdditionStrategy, ReferenceAction, SimpleColumnType, StrOrBoolOrArray, StringOrBool,
19    TableConstraint, TableDef, TableName, TableValidationError, UniqueConstraintStrategy,
20};