1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use super::Validator;
use crate::datetime::Date;
use chrono::format::ParseError;
use std::str::FromStr;

/// A validator for [`Date`].
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct DateValidator;

impl Validator<str> for DateValidator {
    type Error = ParseError;

    #[inline]
    fn validate(&self, data: &str) -> Result<(), Self::Error> {
        Date::from_str(data)?;
        Ok(())
    }
}