pub trait Validate {
// Provided methods
fn prepare(_input: &mut Value, _ctx: &mut ValidationContext) { ... }
fn validate(&self, _ctx: &mut ValidationContext) { ... }
}Expand description
A type that takes part in validation.
Both methods default to doing nothing, so opting a type in is a one-line
impl Validate for T {}. #[derive(Validate)] generates both.
Provided Methods§
Sourcefn prepare(_input: &mut Value, _ctx: &mut ValidationContext)
fn prepare(_input: &mut Value, _ctx: &mut ValidationContext)
Check and normalise the raw input for this type in place.
Sourcefn validate(&self, _ctx: &mut ValidationContext)
fn validate(&self, _ctx: &mut ValidationContext)
Check invariants of the deserialized value.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl Validate for Map<String, Value>
impl Validate for Map<String, Value>
fn prepare(input: &mut Value, ctx: &mut ValidationContext)
impl Validate for Value
impl Validate for char
Source§impl<A: Validate, B: Validate, C: Validate, D: Validate> Validate for (A, B, C, D)
Tuples (e.g. positional path parameters) validate each element.
impl<A: Validate, B: Validate, C: Validate, D: Validate> Validate for (A, B, C, D)
Tuples (e.g. positional path parameters) validate each element.
fn validate(&self, ctx: &mut ValidationContext)
Source§impl<A: Validate, B: Validate, C: Validate> Validate for (A, B, C)
Tuples (e.g. positional path parameters) validate each element.
impl<A: Validate, B: Validate, C: Validate> Validate for (A, B, C)
Tuples (e.g. positional path parameters) validate each element.
fn validate(&self, ctx: &mut ValidationContext)
Source§impl<A: Validate, B: Validate> Validate for (A, B)
Tuples (e.g. positional path parameters) validate each element.
impl<A: Validate, B: Validate> Validate for (A, B)
Tuples (e.g. positional path parameters) validate each element.
fn validate(&self, ctx: &mut ValidationContext)
Source§impl<A: Validate> Validate for (A,)
Tuples (e.g. positional path parameters) validate each element.
impl<A: Validate> Validate for (A,)
Tuples (e.g. positional path parameters) validate each element.