Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-def/src/resolver.rs')
| -rw-r--r-- | crates/hir-def/src/resolver.rs | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/crates/hir-def/src/resolver.rs b/crates/hir-def/src/resolver.rs index bfad75c50b..fadab858aa 100644 --- a/crates/hir-def/src/resolver.rs +++ b/crates/hir-def/src/resolver.rs @@ -430,17 +430,12 @@ impl Resolver { return Some(LifetimeNs::Static); } - for scope in self.scopes() { - match scope { - Scope::GenericParams { def, params } => { - if let Some(id) = params.find_lifetime_by_name(&lifetime.name, *def) { - return Some(LifetimeNs::LifetimeParam(id)); - } - } - _ => continue, + self.scopes().find_map(|scope| match scope { + Scope::GenericParams { def, params } => { + params.find_lifetime_by_name(&lifetime.name, *def).map(LifetimeNs::LifetimeParam) } - } - None + _ => None, + }) } /// Returns a set of names available in the current scope. |