Expand description
Procedural macros for waddling-errors
This crate provides convenient macros for defining error code components, primaries, and sequences with rich metadata support.
§Macros
component!- Define component enums with automatic ComponentId implprimary!- Define primary enums with automatic PrimaryId implsequence!- Define sequence constants with metadata
§Examples
ⓘ
use waddling_errors_macros::{component, primary, sequence};
component! {
Auth,
Database {
docs: "Database operations",
tags: ["backend"],
},
}
primary! {
Token,
Connection {
docs: "Connection errors",
},
}
sequence! {
MISSING(001) {
description: "Item not found",
hints: ["Check if item exists"],
},
}Macros§
- component
- Define component enums with automatic ComponentId trait implementation.
- diag
- Define complete diagnostic metadata with full 4-part error codes.
- doc_
gen_ register - Generates documentation registration function for a diagnostic.
- primary
- Define primary enums with automatic PrimaryId trait implementation.
- sequence
- Define sequence constants with rich metadata.
- setup
- Configure module paths for waddling-errors definitions.
Attribute Macros§
- doc_gen
- Attribute macro for automatic documentation generation
- in_
component - Mark modules or files as belonging to a specific component.