1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//! The per-field **zero value** — the type-minimal valid value for a field.
//!
//! This is the single source of truth for "the zero value for this field,"
//! shared by two callers (see `prose/canon/SCHEMAS.md` and `BLUEPRINT.md`):
//!
//! - **blueprint/example emission** ([`super::blueprint`]) — the `example`
//! document's fallback, when a field carries neither an `example:` nor a
//! `default:`.
//! - **zero-filled render** (the render path in `quillmark::orchestration`) —
//! each absent field is filled with its zero value in the plate-JSON
//! projection only, never in the persisted document.
use json;
use ;
use crateQuillValue;
/// The type-empty (zero) value for `field`: the leanest value that satisfies
/// the field's declared type.
///
/// Honestly blank for almost every type — `""` (string, markdown, date,
/// datetime: the validator accepts the empty string for date/datetime), `0`,
/// `false`, `[]`, `{}`. The lone seam is `enum`: there is no empty enum
/// member, so the zero value is the first declared variant (`first_enum`).