Expand description
The codes this crate emits, and the registry gates over them.
The record, the code grammar, the severity ladder, and the stage family live
in powerio-core. What lives here is the transmission side registry: one
DiagnosticInfo per code, declared once, so an emission site names an
entry rather than a loose string and every emitted code is registered by
construction.
Codes are families, not one per site: what differs between two sites of a
family is which field or record it was, which belongs in details where a
consumer can read it, rather than in a code nobody can enumerate.
Modules§
- codes
- One
EmitFamilyper write target, plus the codes a single reader or a single writer owns.
Structs§
- Diagnostic
- One coded user facing finding.
- Diagnostic
Code - Stable dotted identity of one diagnostic.
- Diagnostic
Info - One entry in a crate’s diagnostic registry.
- Emit
Family - The write side family every target shares.
Enums§
- Diagnostic
Severity - Severity of one user facing finding.
- Diagnostic
Stage - Pipeline stage encoded by the first segment of a diagnostic code.
- Error
Category - Coarse projection of an operation failure for bindings and exit statuses.
Functions§
- check_
registry - Check grammar, namespace, uniqueness, summaries, and fatal category data.
- code_
is_ well_ formed - Check
[A-Z][A-Z0-9_]*(\.[A-Z0-9_]+){2,}. - registry
- Every code this crate declares.
- render_
diagnostic - render_
diagnostics