pub trait ResultExt<T, E>where
Self: Sized,{
// Required methods
fn swap(self) -> Result<E, T>;
fn recover<R, F>(self, f: F) -> Result<T, R>
where F: F1Once<E, Ret = Result<T, R>>;
fn discard_err<F, B>(self, f: F) -> Result<T, E>
where F: for<'a> F1Once<&'a E, Ret = B>,
B: Discard;
fn filter<P, F>(self, pred: P, on_fail: F) -> Result<T, E>
where P: for<'a> F1Once<&'a T, Ret = bool>,
F: for<'a> F1Once<&'a T, Ret = E>;
fn zip<R, F>(self, f: F) -> Result<(T, R), E>
where F: for<'a> F1Once<&'a T, Ret = Result<R, E>>;
}
Required Methods§
sourcefn recover<R, F>(self, f: F) -> Result<T, R>where
F: F1Once<E, Ret = Result<T, R>>,
fn recover<R, F>(self, f: F) -> Result<T, R>where F: F1Once<E, Ret = Result<T, R>>,
Allows turning an Err back into Ok by binding on the Err variant
sourcefn discard_err<F, B>(self, f: F) -> Result<T, E>where
F: for<'a> F1Once<&'a E, Ret = B>,
B: Discard,
fn discard_err<F, B>(self, f: F) -> Result<T, E>where F: for<'a> F1Once<&'a E, Ret = B>, B: Discard,
Perform some IO when this Result is Err