Skip to main content

check_all_fields

Function check_all_fields 

Source
pub fn check_all_fields<S, T>(data: &T) -> Vec<FieldError>
where S: VldParse, T: Serialize,
Expand description

Validate all fields of a serializable struct against a vld schema type.

Returns a list of FieldErrors (empty if all fields are valid). Designed for validating entire form state at once.

§Example

use vld_dioxus::FieldError;

vld::schema! {
    struct UserSchema {
        name: String => vld::string().min(2),
        email: String => vld::string().email(),
    }
}

#[derive(serde::Serialize)]
struct FormData { name: String, email: String }

let data = FormData { name: "A".into(), email: "bad".into() };
let errors = vld_dioxus::check_all_fields::<UserSchema, _>(&data);
assert!(!errors.is_empty());
assert!(errors.iter().any(|e| e.field == ".name"));