diff --git a/src/core/utils/bool.rs b/src/core/utils/bool.rs index b16f63e9..e9db1e4f 100644 --- a/src/core/utils/bool.rs +++ b/src/core/utils/bool.rs @@ -31,7 +31,7 @@ pub trait BoolExt { fn map_or T>(self, err: T, f: F) -> T; - fn map_or_else T>(self, err: F, f: F) -> T; + fn map_or_else T, F: FnOnce() -> T>(self, err: E, f: F) -> T; fn ok_or(self, err: E) -> Result<(), E>; @@ -84,7 +84,7 @@ impl BoolExt for bool { fn map_or T>(self, err: T, f: F) -> T { self.then(f).unwrap_or(err) } #[inline] - fn map_or_else T>(self, err: F, f: F) -> T { + fn map_or_else T, F: FnOnce() -> T>(self, err: E, f: F) -> T { self.then(f).unwrap_or_else(err) }