diff options
author | Alan Du <[email protected]> | 2019-06-03 15:27:51 +0100 |
---|---|---|
committer | Alan Du <[email protected]> | 2019-06-04 23:05:07 +0100 |
commit | b28ca32db22d5e2ed34db556c6fd50a5fc2d679c (patch) | |
tree | 7e86e3f6ffdbc972b2ac968503f2b3671fd9b3a5 /crates/ra_hir/src/nameres.rs | |
parent | 40424d4222d4630bc53294d10f1718f2d3d300de (diff) |
Fix clippy::or_fun_call
Diffstat (limited to 'crates/ra_hir/src/nameres.rs')
-rw-r--r-- | crates/ra_hir/src/nameres.rs | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/crates/ra_hir/src/nameres.rs b/crates/ra_hir/src/nameres.rs index d822f7d93..7bddee9b9 100644 --- a/crates/ra_hir/src/nameres.rs +++ b/crates/ra_hir/src/nameres.rs | |||
@@ -332,7 +332,8 @@ impl CrateDefMap { | |||
332 | let name = path.expand_macro_expr()?; | 332 | let name = path.expand_macro_expr()?; |
333 | // search local first | 333 | // search local first |
334 | // FIXME: Remove public_macros check when we have a correct local_macors implementation | 334 | // FIXME: Remove public_macros check when we have a correct local_macors implementation |
335 | let local = self.public_macros.get(&name).or(self.local_macros.get(&name)).map(|it| *it); | 335 | let local = |
336 | self.public_macros.get(&name).or_else(|| self.local_macros.get(&name)).map(|it| *it); | ||
336 | if local.is_some() { | 337 | if local.is_some() { |
337 | return local; | 338 | return local; |
338 | } | 339 | } |
@@ -479,8 +480,10 @@ impl CrateDefMap { | |||
479 | } | 480 | } |
480 | 481 | ||
481 | fn resolve_name_in_crate_root_or_extern_prelude(&self, name: &Name) -> ItemOrMacro { | 482 | fn resolve_name_in_crate_root_or_extern_prelude(&self, name: &Name) -> ItemOrMacro { |
482 | let from_crate_root = | 483 | let from_crate_root = self[self.root] |
483 | self[self.root].scope.get_item_or_macro(name).unwrap_or(Either::Left(PerNs::none())); | 484 | .scope |
485 | .get_item_or_macro(name) | ||
486 | .unwrap_or_else(|| Either::Left(PerNs::none())); | ||
484 | let from_extern_prelude = self.resolve_name_in_extern_prelude(name); | 487 | let from_extern_prelude = self.resolve_name_in_extern_prelude(name); |
485 | 488 | ||
486 | or(from_crate_root, Either::Left(from_extern_prelude)) | 489 | or(from_crate_root, Either::Left(from_extern_prelude)) |
@@ -505,8 +508,10 @@ impl CrateDefMap { | |||
505 | // - current module / scope | 508 | // - current module / scope |
506 | // - extern prelude | 509 | // - extern prelude |
507 | // - std prelude | 510 | // - std prelude |
508 | let from_scope = | 511 | let from_scope = self[module] |
509 | self[module].scope.get_item_or_macro(name).unwrap_or(Either::Left(PerNs::none()));; | 512 | .scope |
513 | .get_item_or_macro(name) | ||
514 | .unwrap_or_else(|| Either::Left(PerNs::none()));; | ||
510 | let from_extern_prelude = | 515 | let from_extern_prelude = |
511 | self.extern_prelude.get(name).map_or(PerNs::none(), |&it| PerNs::types(it)); | 516 | self.extern_prelude.get(name).map_or(PerNs::none(), |&it| PerNs::types(it)); |
512 | let from_prelude = self.resolve_in_prelude(db, name); | 517 | let from_prelude = self.resolve_in_prelude(db, name); |
@@ -525,7 +530,7 @@ impl CrateDefMap { | |||
525 | } else { | 530 | } else { |
526 | db.crate_def_map(prelude.krate)[prelude.module_id].scope.get_item_or_macro(name) | 531 | db.crate_def_map(prelude.krate)[prelude.module_id].scope.get_item_or_macro(name) |
527 | }; | 532 | }; |
528 | resolution.unwrap_or(Either::Left(PerNs::none())) | 533 | resolution.unwrap_or_else(|| Either::Left(PerNs::none())) |
529 | } else { | 534 | } else { |
530 | Either::Left(PerNs::none()) | 535 | Either::Left(PerNs::none()) |
531 | } | 536 | } |