rosace_forms/lib.rs
1//! Form state management for ROSACE.
2//!
3//! # Example
4//! ```rust,ignore
5//! use rosace_forms::{Form, FormField, Required, Email};
6//!
7//! let mut form = Form::new()
8//! .field(FormField::new("email").rule(Required).rule(Email))
9//! .field(FormField::new("name").rule(Required).rule(MinLength(2)));
10//!
11//! form.field_named_mut("email").unwrap().set("not-an-email");
12//! assert!(!form.validate_all());
13//! assert!(!form.errors().is_empty());
14//! ```
15
16pub mod error;
17pub mod field;
18pub mod form;
19pub mod validator;
20
21pub use error::FieldError;
22pub use field::FormField;
23pub use form::Form;
24pub use validator::{Contains, Email, MaxLength, MinLength, Range, Required, Validator};