#[repr(u8)]pub enum Attr {
Min(i64),
Max(i64),
MinLength(usize),
MaxLength(usize),
Email,
Url,
Regex(&'static str),
Contains(&'static str),
Custom(Option<ValidatorFn>),
}Expand description
Validation attributes for facet fields.
These attributes can be used with #[facet(validate::...)] syntax.
Variants§
Min(i64)
Minimum numeric value constraint.
Usage: #[facet(validate::min = 0)]
Max(i64)
Maximum numeric value constraint.
Usage: #[facet(validate::max = 100)]
MinLength(usize)
Minimum length constraint for strings and collections.
Usage: #[facet(validate::min_length = 1)]
MaxLength(usize)
Maximum length constraint for strings and collections.
Usage: #[facet(validate::max_length = 100)]
Email format validation.
Usage: #[facet(validate::email)]
Url
URL format validation.
Usage: #[facet(validate::url)]
Regex(&'static str)
Regex pattern validation.
Usage: #[facet(validate::regex = r"^[A-Z]{2}$")]
Contains(&'static str)
String contains validation.
Usage: #[facet(validate::contains = "foo")]
Custom(Option<ValidatorFn>)
Custom validator function.
The function must have signature fn(&T) -> Result<(), String>.
Usage: #[facet(validate::custom = my_validator)]