diff --git a/src/tools/rust-analyzer/crates/syntax/src/ast/node_ext.rs b/src/tools/rust-analyzer/crates/syntax/src/ast/node_ext.rs index 911e3d823de6..16abb2984d74 100644 --- a/src/tools/rust-analyzer/crates/syntax/src/ast/node_ext.rs +++ b/src/tools/rust-analyzer/crates/syntax/src/ast/node_ext.rs @@ -794,6 +794,8 @@ pub enum TypeBoundKind { PathType(ast::PathType), /// for<'a> ... ForType(ast::ForType), + /// use + Use(ast::GenericParamList), /// 'a Lifetime(ast::Lifetime), } @@ -804,6 +806,8 @@ impl ast::TypeBound { TypeBoundKind::PathType(path_type) } else if let Some(for_type) = support::children(self.syntax()).next() { TypeBoundKind::ForType(for_type) + } else if let Some(generic_param_list) = self.generic_param_list() { + TypeBoundKind::Use(generic_param_list) } else if let Some(lifetime) = self.lifetime() { TypeBoundKind::Lifetime(lifetime) } else {