diff options
Diffstat (limited to 'crates/hir_def/src/generics.rs')
-rw-r--r-- | crates/hir_def/src/generics.rs | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/crates/hir_def/src/generics.rs b/crates/hir_def/src/generics.rs index 924046435..41134d23b 100644 --- a/crates/hir_def/src/generics.rs +++ b/crates/hir_def/src/generics.rs | |||
@@ -260,9 +260,8 @@ impl GenericParams { | |||
260 | self.fill_bounds(&lower_ctx, &type_param, Either::Left(type_ref)); | 260 | self.fill_bounds(&lower_ctx, &type_param, Either::Left(type_ref)); |
261 | } | 261 | } |
262 | for lifetime_param in params.lifetime_params() { | 262 | for lifetime_param in params.lifetime_params() { |
263 | let name = lifetime_param | 263 | let name = |
264 | .lifetime_token() | 264 | lifetime_param.lifetime().map_or_else(Name::missing, |lt| Name::new_lifetime(<)); |
265 | .map_or_else(Name::missing, |tok| Name::new_lifetime(&tok)); | ||
266 | let param = LifetimeParamData { name: name.clone() }; | 265 | let param = LifetimeParamData { name: name.clone() }; |
267 | let param_id = self.lifetimes.alloc(param); | 266 | let param_id = self.lifetimes.alloc(param); |
268 | sm.lifetime_params.insert(param_id, lifetime_param.clone()); | 267 | sm.lifetime_params.insert(param_id, lifetime_param.clone()); |
@@ -275,8 +274,8 @@ impl GenericParams { | |||
275 | for pred in where_clause.predicates() { | 274 | for pred in where_clause.predicates() { |
276 | let target = if let Some(type_ref) = pred.ty() { | 275 | let target = if let Some(type_ref) = pred.ty() { |
277 | Either::Left(TypeRef::from_ast(lower_ctx, type_ref)) | 276 | Either::Left(TypeRef::from_ast(lower_ctx, type_ref)) |
278 | } else if let Some(lifetime_tok) = pred.lifetime_token() { | 277 | } else if let Some(lifetime) = pred.lifetime() { |
279 | Either::Right(LifetimeRef::from_token(lifetime_tok)) | 278 | Either::Right(LifetimeRef::new(&lifetime)) |
280 | } else { | 279 | } else { |
281 | continue; | 280 | continue; |
282 | }; | 281 | }; |