From a1e18695548b5cd6661f26a985b34c8b105e1896 Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Sat, 29 Feb 2020 21:24:40 +0100 Subject: Rename ast::ImplBlock -> ast::ImplDef --- .../ra_ide/src/completion/complete_trait_impl.rs | 50 ++++++++++------------ crates/ra_ide/src/completion/completion_context.rs | 8 ++-- 2 files changed, 26 insertions(+), 32 deletions(-) (limited to 'crates/ra_ide/src/completion') diff --git a/crates/ra_ide/src/completion/complete_trait_impl.rs b/crates/ra_ide/src/completion/complete_trait_impl.rs index 9a27c164b..18a1d2995 100644 --- a/crates/ra_ide/src/completion/complete_trait_impl.rs +++ b/crates/ra_ide/src/completion/complete_trait_impl.rs @@ -3,7 +3,7 @@ //! This module adds the completion items related to implementing associated //! items within a `impl Trait for Struct` block. The current context node //! must be within either a `FN_DEF`, `TYPE_ALIAS_DEF`, or `CONST_DEF` node -//! and an direct child of an `IMPL_BLOCK`. +//! and an direct child of an `IMPL_DEF`. //! //! # Examples //! @@ -55,49 +55,43 @@ pub(crate) fn complete_trait_impl(acc: &mut Completions, ctx: &CompletionContext _ => false, }); - let impl_block = trigger + let impl_def = trigger .as_ref() .and_then(|node| node.parent()) .and_then(|node| node.parent()) - .and_then(ast::ImplBlock::cast); + .and_then(ast::ImplDef::cast); - if let (Some(trigger), Some(impl_block)) = (trigger, impl_block) { + if let (Some(trigger), Some(impl_def)) = (trigger, impl_def) { match trigger.kind() { SyntaxKind::FN_DEF => { - for missing_fn in - get_missing_impl_items(&ctx.sema, &impl_block).iter().filter_map(|item| { - match item { - hir::AssocItem::Function(fn_item) => Some(fn_item), - _ => None, - } - }) - { + for missing_fn in get_missing_impl_items(&ctx.sema, &impl_def).iter().filter_map( + |item| match item { + hir::AssocItem::Function(fn_item) => Some(fn_item), + _ => None, + }, + ) { add_function_impl(&trigger, acc, ctx, &missing_fn); } } SyntaxKind::TYPE_ALIAS_DEF => { - for missing_fn in - get_missing_impl_items(&ctx.sema, &impl_block).iter().filter_map(|item| { - match item { - hir::AssocItem::TypeAlias(type_item) => Some(type_item), - _ => None, - } - }) - { + for missing_fn in get_missing_impl_items(&ctx.sema, &impl_def).iter().filter_map( + |item| match item { + hir::AssocItem::TypeAlias(type_item) => Some(type_item), + _ => None, + }, + ) { add_type_alias_impl(&trigger, acc, ctx, &missing_fn); } } SyntaxKind::CONST_DEF => { - for missing_fn in - get_missing_impl_items(&ctx.sema, &impl_block).iter().filter_map(|item| { - match item { - hir::AssocItem::Const(const_item) => Some(const_item), - _ => None, - } - }) - { + for missing_fn in get_missing_impl_items(&ctx.sema, &impl_def).iter().filter_map( + |item| match item { + hir::AssocItem::Const(const_item) => Some(const_item), + _ => None, + }, + ) { add_const_impl(&trigger, acc, ctx, &missing_fn); } } diff --git a/crates/ra_ide/src/completion/completion_context.rs b/crates/ra_ide/src/completion/completion_context.rs index 81321a897..9aa5a705d 100644 --- a/crates/ra_ide/src/completion/completion_context.rs +++ b/crates/ra_ide/src/completion/completion_context.rs @@ -27,7 +27,7 @@ pub(crate) struct CompletionContext<'a> { pub(super) use_item_syntax: Option, pub(super) record_lit_syntax: Option, pub(super) record_lit_pat: Option, - pub(super) impl_block: Option, + pub(super) impl_def: Option, pub(super) is_param: bool, /// If a name-binding or reference to a const in a pattern. /// Irrefutable patterns (like let) are excluded. @@ -81,7 +81,7 @@ impl<'a> CompletionContext<'a> { use_item_syntax: None, record_lit_syntax: None, record_lit_pat: None, - impl_block: None, + impl_def: None, is_param: false, is_pat_binding: false, is_trivial_path: false, @@ -161,12 +161,12 @@ impl<'a> CompletionContext<'a> { self.record_lit_syntax = find_node_at_offset(original_file.syntax(), self.offset); } - self.impl_block = self + self.impl_def = self .token .parent() .ancestors() .take_while(|it| it.kind() != SOURCE_FILE && it.kind() != MODULE) - .find_map(ast::ImplBlock::cast); + .find_map(ast::ImplDef::cast); let top_node = name_ref .syntax() -- cgit v1.2.3