design-md-consolidation 3.3: ast.rs doc-comment names DESIGN.md §Data-model as canonical schema, drift test as enforcement
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
//! AST nodes for the AILang language.
|
||||
//!
|
||||
//! Every type in this module is the in-memory mirror of a node in the
|
||||
//! AILang JSON schema documented in `docs/DESIGN.md`. The serde
|
||||
//! attributes carry the schema: field renames (`as`, `type`, `fn`,
|
||||
//! `paramTypes`, `retType`), enum tags (`kind`, `t`, `k`, `p`), and
|
||||
//! `skip_serializing_if` predicates that keep the canonical-JSON
|
||||
//! **The canonical schema lives in `docs/DESIGN.md` §"Data model"**;
|
||||
//! this module is the Rust-side projection of it. When the two drift,
|
||||
//! `crates/ailang-core/tests/design_schema_drift.rs` fires.
|
||||
//!
|
||||
//! The serde attributes carry the schema: field renames (`as`, `type`,
|
||||
//! `fn`, `paramTypes`, `retType`), enum tags (`kind`, `t`, `k`, `p`),
|
||||
//! and `skip_serializing_if` predicates that keep the canonical-JSON
|
||||
//! representation backwards compatible across schema extensions.
|
||||
//!
|
||||
//! The entry type is [`Module`]. The two helpers [`def_name`] and
|
||||
|
||||
Reference in New Issue
Block a user