pub struct Valid<A, E>(/* private fields */);
Implementations§
source§impl<A, E> Valid<A, E>
impl<A, E> Valid<A, E>
pub fn fail(e: E) -> Valid<A, E>
pub fn fail_with(message: E, description: E) -> Valid<A, E>where
E: Debug,
pub fn from_validation_err(error: ValidationError<E>) -> Self
pub fn from_vec_cause(error: Vec<Cause<E>>) -> Self
pub fn succeed(a: A) -> Valid<A, E>
pub fn from_iter<B>( iter: impl IntoIterator<Item = A>, f: impl FnMut(A) -> Valid<B, E>, ) -> Valid<Vec<B>, E>
pub fn from_option(option: Option<A>, e: E) -> Valid<A, E>
pub fn none() -> Valid<Option<A>, E>
Trait Implementations§
source§impl<A, E> From<Result<A, ValidationError<E>>> for Valid<A, E>
impl<A, E> From<Result<A, ValidationError<E>>> for Valid<A, E>
source§fn from(value: Result<A, ValidationError<E>>) -> Self
fn from(value: Result<A, ValidationError<E>>) -> Self
Converts to this type from the input type.
source§impl<A, E> Validator<A, E> for Valid<A, E>
impl<A, E> Validator<A, E> for Valid<A, E>
fn to_result(self) -> Result<A, ValidationError<E>>
fn is_succeed(&self) -> bool
fn is_fail(&self) -> bool
fn map<A1>(self, f: impl FnOnce(A) -> A1) -> Valid<A1, E>
fn and<A1>(self, other: Valid<A1, E>) -> Valid<A1, E>
fn zip<A1>(self, other: Valid<A1, E>) -> Valid<(A, A1), E>
fn fuse<A1>(self, other: Valid<A1, E>) -> Fusion<(A, A1), E>
fn trace(self, message: &str) -> Valid<A, E>
fn fold<A1>( self, ok: impl FnOnce(A) -> Valid<A1, E>, err: impl FnOnce() -> Valid<A1, E>, ) -> Valid<A1, E>
fn and_then<B>(self, f: impl FnOnce(A) -> Valid<B, E>) -> Valid<B, E>
fn unit(self) -> Valid<(), E>
fn some(self) -> Valid<Option<A>, E>
fn map_to<B>(self, b: B) -> Valid<B, E>
fn when(self, f: impl FnOnce() -> bool) -> Valid<(), E>
impl<A, E> StructuralPartialEq for Valid<A, E>
Auto Trait Implementations§
impl<A, E> Freeze for Valid<A, E>where
A: Freeze,
impl<A, E> RefUnwindSafe for Valid<A, E>where
A: RefUnwindSafe,
E: RefUnwindSafe,
impl<A, E> Send for Valid<A, E>
impl<A, E> Sync for Valid<A, E>
impl<A, E> Unpin for Valid<A, E>
impl<A, E> UnwindSafe for Valid<A, E>where
A: UnwindSafe,
E: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)