diff options
author | Aleksey Kladov <[email protected]> | 2020-01-16 15:08:46 +0000 |
---|---|---|
committer | Aleksey Kladov <[email protected]> | 2020-01-16 15:08:46 +0000 |
commit | 81a45ca1b3606d2c328740aa7e2dc989b9e128a5 (patch) | |
tree | beb2951ab9f7a7ab1420cb072c8839957c6de02f /crates/ra_assists/src/assists | |
parent | f4eeff2c82e7d8b95706c2bcb0388eeeb3ddd24e (diff) |
Make FromSource private
Diffstat (limited to 'crates/ra_assists/src/assists')
-rw-r--r-- | crates/ra_assists/src/assists/add_new.rs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/crates/ra_assists/src/assists/add_new.rs b/crates/ra_assists/src/assists/add_new.rs index d148d6e73..aedcd6286 100644 --- a/crates/ra_assists/src/assists/add_new.rs +++ b/crates/ra_assists/src/assists/add_new.rs | |||
@@ -1,5 +1,5 @@ | |||
1 | use format_buf::format; | 1 | use format_buf::format; |
2 | use hir::{db::HirDatabase, FromSource, InFile}; | 2 | use hir::{db::HirDatabase, InFile}; |
3 | use join_to_string::join; | 3 | use join_to_string::join; |
4 | use ra_syntax::{ | 4 | use ra_syntax::{ |
5 | ast::{ | 5 | ast::{ |
@@ -136,15 +136,16 @@ fn find_struct_impl( | |||
136 | let module = strukt.syntax().ancestors().find(|node| { | 136 | let module = strukt.syntax().ancestors().find(|node| { |
137 | ast::Module::can_cast(node.kind()) || ast::SourceFile::can_cast(node.kind()) | 137 | ast::Module::can_cast(node.kind()) || ast::SourceFile::can_cast(node.kind()) |
138 | })?; | 138 | })?; |
139 | let mut sb = ctx.source_binder(); | ||
139 | 140 | ||
140 | let struct_ty = { | 141 | let struct_ty = { |
141 | let src = InFile { file_id: ctx.frange.file_id.into(), value: strukt.clone() }; | 142 | let src = InFile { file_id: ctx.frange.file_id.into(), value: strukt.clone() }; |
142 | hir::Struct::from_source(db, src)?.ty(db) | 143 | sb.to_def::<hir::Struct, _>(src)?.ty(db) |
143 | }; | 144 | }; |
144 | 145 | ||
145 | let block = module.descendants().filter_map(ast::ImplBlock::cast).find_map(|impl_blk| { | 146 | let block = module.descendants().filter_map(ast::ImplBlock::cast).find_map(|impl_blk| { |
146 | let src = InFile { file_id: ctx.frange.file_id.into(), value: impl_blk.clone() }; | 147 | let src = InFile { file_id: ctx.frange.file_id.into(), value: impl_blk.clone() }; |
147 | let blk = hir::ImplBlock::from_source(db, src)?; | 148 | let blk = sb.to_def::<hir::ImplBlock, _>(src)?; |
148 | 149 | ||
149 | let same_ty = blk.target_ty(db) == struct_ty; | 150 | let same_ty = blk.target_ty(db) == struct_ty; |
150 | let not_trait_impl = blk.target_trait(db).is_none(); | 151 | let not_trait_impl = blk.target_trait(db).is_none(); |