Crate waddling_errors

Crate waddling_errors 

Source
Expand description

Ultra-minimal diagnostic code system for the Waddling ecosystem

Provides a standardized 4-part diagnostic code format:

Format: SEVERITY.COMPONENT.PRIMARY.SEQUENCE E.CRYPTO.SALT.001

§Quick Start

use waddling_errors::prelude::*;

const ERR_SALT: Code = error("CRYPTO", "SALT", 1);
assert_eq!(ERR_SALT.code(), "E.CRYPTO.SALT.001");

§Sequence Conventions

The Waddling ecosystem uses semantic sequence numbers:

SequenceMeaningExample
001MISSINGRequired item not provided
002MISMATCHValues don’t match expected type
003INVALIDFormat/validation failed
021NOTFOUNDResource not found
025CORRUPTEDData corruption detected
031-897(project)Domain-specific sequences
999COMPLETEFull completion

See docs/SEQUENCE-CONVENTIONS.md for complete list.

§Error Registry Pattern

// errors.rs - Project error registry
pub mod errors {
    use waddling_errors::prelude::*;
     
    pub const SALT_MISSING: Code = error("CRYPTO", "SALT", 1);
    pub const KEY_LENGTH: Code = error("CRYPTO", "LENGTH", 2);
    pub const DEPRECATED_SYNTAX: Code = warning("PARSE", "DEPR", 1);
}

Modules§

prelude

Structs§

Code
Waddling diagnostic code: SEVERITY.COMPONENT.PRIMARY.SEQUENCE

Enums§

Severity
Diagnostic severity level (single-character prefix for 4-part codes)

Functions§

blocked
completed
critical
error
help
info
success
trace
warning

Type Aliases§

DiagnosticCode
ErrorCode