diff options
Diffstat (limited to 'crates/ra_assists/src/lib.rs')
-rw-r--r-- | crates/ra_assists/src/lib.rs | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/crates/ra_assists/src/lib.rs b/crates/ra_assists/src/lib.rs index 555af51bc..881db6347 100644 --- a/crates/ra_assists/src/lib.rs +++ b/crates/ra_assists/src/lib.rs | |||
@@ -89,9 +89,7 @@ fn all_assists<DB: HirDatabase>() -> &'static [fn(AssistCtx<DB>) -> Option<Assis | |||
89 | } | 89 | } |
90 | 90 | ||
91 | fn non_trivia_sibling(node: &SyntaxNode, direction: Direction) -> Option<&SyntaxNode> { | 91 | fn non_trivia_sibling(node: &SyntaxNode, direction: Direction) -> Option<&SyntaxNode> { |
92 | node.siblings(direction) | 92 | node.siblings(direction).skip(1).find(|node| !node.kind().is_trivia()) |
93 | .skip(1) | ||
94 | .find(|node| !node.kind().is_trivia()) | ||
95 | } | 93 | } |
96 | 94 | ||
97 | #[cfg(test)] | 95 | #[cfg(test)] |
@@ -110,10 +108,8 @@ mod helpers { | |||
110 | ) { | 108 | ) { |
111 | let (before_cursor_pos, before) = extract_offset(before); | 109 | let (before_cursor_pos, before) = extract_offset(before); |
112 | let (db, _source_root, file_id) = MockDatabase::with_single_file(&before); | 110 | let (db, _source_root, file_id) = MockDatabase::with_single_file(&before); |
113 | let frange = FileRange { | 111 | let frange = |
114 | file_id, | 112 | FileRange { file_id, range: TextRange::offset_len(before_cursor_pos, 0.into()) }; |
115 | range: TextRange::offset_len(before_cursor_pos, 0.into()), | ||
116 | }; | ||
117 | let assist = | 113 | let assist = |
118 | AssistCtx::with_ctx(&db, frange, true, assist).expect("code action is not applicable"); | 114 | AssistCtx::with_ctx(&db, frange, true, assist).expect("code action is not applicable"); |
119 | let action = match assist { | 115 | let action = match assist { |
@@ -161,10 +157,8 @@ mod helpers { | |||
161 | ) { | 157 | ) { |
162 | let (before_cursor_pos, before) = extract_offset(before); | 158 | let (before_cursor_pos, before) = extract_offset(before); |
163 | let (db, _source_root, file_id) = MockDatabase::with_single_file(&before); | 159 | let (db, _source_root, file_id) = MockDatabase::with_single_file(&before); |
164 | let frange = FileRange { | 160 | let frange = |
165 | file_id, | 161 | FileRange { file_id, range: TextRange::offset_len(before_cursor_pos, 0.into()) }; |
166 | range: TextRange::offset_len(before_cursor_pos, 0.into()), | ||
167 | }; | ||
168 | let assist = AssistCtx::with_ctx(&db, frange, true, assist); | 162 | let assist = AssistCtx::with_ctx(&db, frange, true, assist); |
169 | assert!(assist.is_none()); | 163 | assert!(assist.is_none()); |
170 | } | 164 | } |