pub fn validator_errors_to_miette<T>(
spanned: &Spanned<T>,
errors: &ValidationErrors,
source: &str,
name: impl Into<String>,
) -> ReportExpand description
Render a [validator::ValidationErrors] against a
Spanned<T> payload as a [miette::Report].
Mirrors garde_errors_to_miette for the validator crate.
§Examples
ⓘ
use noyalib::Spanned;
use noyalib::validated_miette::validator_errors_to_miette;
use validator::Validate;
#[derive(Debug, serde::Deserialize, Validate)]
struct Cfg {
#[validate(range(min = 1024))]
port: u16,
}
let yaml = "port: 22\n";
let wrapped: Spanned<Cfg> = noyalib::from_str(yaml).unwrap();
if let Err(errs) = wrapped.value.validate() {
let report = validator_errors_to_miette(&wrapped, &errs, yaml, "config.yaml");
drop(report);
}