Expand description
Parameter values, provenance, and canonical fingerprints.
A Value is the observation of a Parameter at a particular point in
a trial or binding. Each concrete variant owns the native Rust value
plus a shared Provenance that records the owning parameter name,
the instant the value was generated, an optional generator tag, and
a BLAKE3 fingerprint over the canonical byte form.
Canonical form (per SRD-0004 §Fingerprinting) is a tag byte, then the
parameter name as UTF-8 with a 0x00 terminator, then the per-kind
payload. The full byte layout is shipped with each variant’s
fingerprint_of helper so downstream tools can reproduce the hash
without depending on this crate.
Constructors always compute the fingerprint. Value::verify_fingerprint
re-derives it and reports mismatches; callers run this at trust
boundaries where tampering matters.
Structs§
- Boolean
Value - An observed
boolvalue. - Double
Value - An observed
f64value. - Integer
Value - An observed
i64value. - Provenance
- Shared metadata attached to every
Value. - Selection
Item - A validated member of a selection domain.
- Selection
Value - An observed selection value.
- String
Value - An observed
Stringvalue.
Enums§
- Boundary
Kind - Which boundary a
GeneratorInfo::Boundaryvalue picked. - Generator
Info - How a value was produced.
- Value
- An observed parameter value, tagged by kind.
- Value
Kind - Unit-only discriminator for a
Valuevariant.