Skip to main content

backbone_support/application/validator/
issue_validator.rs

1//! Validator for Issue entity
2//!
3//! Generated by metaphor-schema. Do not edit manually.
4//!
5//! Returns an `EntityValidator<Issue>` pre-loaded with schema-derived
6//! field rules. Extend in the `// <<< CUSTOM` zone.
7
8use backbone_core::{EntityValidator, ValidationErrors, ValidationError};
9use backbone_core::{NonNegative, OptionalNotBlank, RequiredString};
10use crate::domain::entity::Issue;
11
12/// Validator type alias for Issue entities.
13pub type IssueValidator = EntityValidator<Issue>;
14
15/// Build a validator for Issue with all schema-defined field rules.
16pub fn issue_validator() -> IssueValidator {
17    EntityValidator::new()
18        .rule(RequiredString::new("subject", |e: &Issue| &e.subject))
19        .rule(OptionalNotBlank::new("description", |e: &Issue| e.description.as_deref()))
20        .rule(NonNegative::new("total_paused_mins", |e: &Issue| e.total_paused_mins as i64))
21    // <<< CUSTOM RULES
22    // END CUSTOM RULES
23}
24
25// <<< CUSTOM
26// END CUSTOM