Expand description
Foundational primitive types for the whole workspace. This crate sits below core rather than
inside it because core itself needs values and diagnostics, which would otherwise cycle. The
types here are wire- and disk-stable: rearranging Value or ValueType corrupts persisted data.
Modules§
- byte_
size - clock
- config
- count
- encoding
- error
Errorcarries a structuredDiagnosticplus the source fragment needed to point a user-visible message at the offending span. Every user-facing failure goes through it: returning a bare string from deeper code is what makes a diagnostic lose its span between layers.- factory
- Constructors for test fixtures, shared workspace-wide so a helper is written once rather than per test file. Where the argument is a raw integer the unit lives in the function name, since the type cannot carry it.
- fragment
- params
- util
- Small utilities: the bit-vector behind none-bitmaps and row masks, the copy-on-write
CowVec, base58/base64/hex codecs, Unicode helpers and float formatting. Everything here has zero ReifyDB-internal dependencies on purpose, so any crate can pull from it without a cycle. - value
- Workspace-wide value system: the
Valueenum every column carries, theValueTypethat classifies it, and theConstraintfamily that narrows a type. Variant order is part of the wire format - adding one is a coordinated change and rearranging existing ones corrupts persisted data.