evobench_tools/utillib/
invert.rs

1pub trait Invert {
2    type Target;
3    fn invert(self) -> Self::Target;
4}
5
6impl<A, B> Invert for Result<A, B> {
7    type Target = Result<B, A>;
8
9    fn invert(self) -> Result<B, A> {
10        match self {
11            Ok(v) => Err(v),
12            Err(e) => Ok(e),
13        }
14    }
15}