pub trait PrimaryIdDocumented: PrimaryId {
// Provided methods
fn description(&self) -> Option<&'static str> { ... }
fn examples(&self) -> &'static [&'static str] { ... }
fn related(&self) -> &'static [&'static str] { ... }
}Expand description
Extended trait for primaries with documentation metadata
Implement this trait if you want your primary categories to appear in generated documentation with rich metadata.
§Examples
use waddling_errors::{PrimaryId, PrimaryIdDocumented};
#[derive(Debug, Clone, Copy)]
enum Primary {
Syntax,
}
impl PrimaryId for Primary {
fn as_str(&self) -> &'static str {
match self {
Primary::Syntax => "SYNTAX",
}
}
}
impl PrimaryIdDocumented for Primary {
fn description(&self) -> Option<&'static str> {
Some("Syntax-level parsing errors")
}
}Provided Methods§
Sourcefn description(&self) -> Option<&'static str>
fn description(&self) -> Option<&'static str>
Human-readable description of this primary category
Related primary categories
Example: SYNTAX relates to PARSE, TOKENIZE
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.