Use as_deref in compiler (but only where it makes sense)
This commit is contained in:
@@ -33,11 +33,7 @@ pub struct Query<T> {
|
||||
|
||||
impl<T> Query<T> {
|
||||
fn compute<F: FnOnce() -> Result<T>>(&self, f: F) -> Result<&Query<T>> {
|
||||
let mut result = self.result.borrow_mut();
|
||||
if result.is_none() {
|
||||
*result = Some(f());
|
||||
}
|
||||
result.as_ref().unwrap().as_ref().map(|_| self).map_err(|err| *err)
|
||||
self.result.borrow_mut().get_or_insert_with(f).as_ref().map(|_| self).map_err(|&err| err)
|
||||
}
|
||||
|
||||
/// Takes ownership of the query result. Further attempts to take or peek the query
|
||||
|
||||
Reference in New Issue
Block a user