Crate valid8

Source
Expand description

§Valid8

A simple validation library.

§Example

Use the validators to validate values.

use valid8::Validator;
use valid8::validator::Min;

let validator = Min::<u32>::new(5);
let invalid = "1234";
assert!(validator.validate(&invalid).is_err());

let valid = "12345";
assert!(validator.validate(&valid).is_ok());

Use the derive(Validate) macro to generate validation code for structs.

use valid8::Validate;

#[derive(Validate)]
struct User {
    #[validate(required)]
    username: String,
    #[validate(required, email)]
    email: String,
    #[validate(required, min(8))]
    password: String,
}

let valid = User {
    username: String::from("Joe"),
    email: String::from("joe@example.com"),
    password: String::from("12345678"),
};

assert!(valid.validate().is_ok());

let invalid = User {
    username: String::from(""),
    email: String::from("joe@example"),
    password: String::from("1234567"),
};

assert!(invalid.validate().is_err());

Re-exports§

pub use validator::Validator;
pub use regex;

Modules§

validator
Validators for different types.

Enums§

ValidationErrorderive
The error returned by the validate method generated by the derive(Validate) macro.

Derive Macros§

Validatederive