ferriorm_core/lib.rs
1#![warn(clippy::pedantic)]
2
3//! Core domain types for the ferriorm ecosystem.
4//!
5//! This crate is the foundation of ferriorm. It defines the Abstract Syntax Tree
6//! ([`ast`]), the validated Schema Intermediate Representation ([`schema`]),
7//! scalar and provider types ([`types`]), and domain-level errors ([`error`]).
8//!
9//! `ferriorm-core` has **zero external dependencies** (aside from optional `serde`
10//! support behind a feature flag). Every other ferriorm crate depends on it, but it
11//! depends on nothing outside `std`.
12//!
13//! # Crate relationships
14//!
15//! ```text
16//! ferriorm-parser ──┐
17//! ferriorm-codegen ─┤
18//! ferriorm-runtime ─┼── all depend on ──► ferriorm-core
19//! ferriorm-migrate ─┘
20//! ```
21
22pub mod ast;
23pub mod error;
24pub mod schema;
25pub mod types;
26pub mod utils;