aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_editor/src/typing.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_editor/src/typing.rs')
-rw-r--r--crates/ra_editor/src/typing.rs16
1 files changed, 8 insertions, 8 deletions
diff --git a/crates/ra_editor/src/typing.rs b/crates/ra_editor/src/typing.rs
index 5a457d148..f894d8392 100644
--- a/crates/ra_editor/src/typing.rs
+++ b/crates/ra_editor/src/typing.rs
@@ -4,14 +4,14 @@ use ra_syntax::{
4 algo::{find_covering_node, find_leaf_at_offset, LeafAtOffset}, 4 algo::{find_covering_node, find_leaf_at_offset, LeafAtOffset},
5 ast, 5 ast,
6 text_utils::{contains_offset_nonstrict, intersect}, 6 text_utils::{contains_offset_nonstrict, intersect},
7 AstNode, File, SyntaxKind, 7 AstNode, SourceFileNode, SyntaxKind,
8 SyntaxKind::*, 8 SyntaxKind::*,
9 SyntaxNodeRef, TextRange, TextUnit, 9 SyntaxNodeRef, TextRange, TextUnit,
10}; 10};
11 11
12use crate::{find_node_at_offset, EditBuilder, LocalEdit}; 12use crate::{find_node_at_offset, EditBuilder, LocalEdit};
13 13
14pub fn join_lines(file: &File, range: TextRange) -> LocalEdit { 14pub fn join_lines(file: &SourceFileNode, range: TextRange) -> LocalEdit {
15 let range = if range.is_empty() { 15 let range = if range.is_empty() {
16 let syntax = file.syntax(); 16 let syntax = file.syntax();
17 let text = syntax.text().slice(range.start()..); 17 let text = syntax.text().slice(range.start()..);
@@ -55,7 +55,7 @@ pub fn join_lines(file: &File, range: TextRange) -> LocalEdit {
55 } 55 }
56} 56}
57 57
58pub fn on_enter(file: &File, offset: TextUnit) -> Option<LocalEdit> { 58pub fn on_enter(file: &SourceFileNode, offset: TextUnit) -> Option<LocalEdit> {
59 let comment = find_leaf_at_offset(file.syntax(), offset) 59 let comment = find_leaf_at_offset(file.syntax(), offset)
60 .left_biased() 60 .left_biased()
61 .and_then(ast::Comment::cast)?; 61 .and_then(ast::Comment::cast)?;
@@ -80,7 +80,7 @@ pub fn on_enter(file: &File, offset: TextUnit) -> Option<LocalEdit> {
80 }) 80 })
81} 81}
82 82
83fn node_indent<'a>(file: &'a File, node: SyntaxNodeRef) -> Option<&'a str> { 83fn node_indent<'a>(file: &'a SourceFileNode, node: SyntaxNodeRef) -> Option<&'a str> {
84 let ws = match find_leaf_at_offset(file.syntax(), node.range().start()) { 84 let ws = match find_leaf_at_offset(file.syntax(), node.range().start()) {
85 LeafAtOffset::Between(l, r) => { 85 LeafAtOffset::Between(l, r) => {
86 assert!(r == node); 86 assert!(r == node);
@@ -100,7 +100,7 @@ fn node_indent<'a>(file: &'a File, node: SyntaxNodeRef) -> Option<&'a str> {
100 Some(&text[pos..]) 100 Some(&text[pos..])
101} 101}
102 102
103pub fn on_eq_typed(file: &File, offset: TextUnit) -> Option<LocalEdit> { 103pub fn on_eq_typed(file: &SourceFileNode, offset: TextUnit) -> Option<LocalEdit> {
104 let let_stmt: ast::LetStmt = find_node_at_offset(file.syntax(), offset)?; 104 let let_stmt: ast::LetStmt = find_node_at_offset(file.syntax(), offset)?;
105 if let_stmt.has_semi() { 105 if let_stmt.has_semi() {
106 return None; 106 return None;
@@ -390,7 +390,7 @@ fn foo() {
390 390
391 fn check_join_lines_sel(before: &str, after: &str) { 391 fn check_join_lines_sel(before: &str, after: &str) {
392 let (sel, before) = extract_range(before); 392 let (sel, before) = extract_range(before);
393 let file = File::parse(&before); 393 let file = SourceFileNode::parse(&before);
394 let result = join_lines(&file, sel); 394 let result = join_lines(&file, sel);
395 let actual = result.edit.apply(&before); 395 let actual = result.edit.apply(&before);
396 assert_eq_text!(after, &actual); 396 assert_eq_text!(after, &actual);
@@ -469,7 +469,7 @@ pub fn handle_find_matching_brace() {
469 fn test_on_eq_typed() { 469 fn test_on_eq_typed() {
470 fn do_check(before: &str, after: &str) { 470 fn do_check(before: &str, after: &str) {
471 let (offset, before) = extract_offset(before); 471 let (offset, before) = extract_offset(before);
472 let file = File::parse(&before); 472 let file = SourceFileNode::parse(&before);
473 let result = on_eq_typed(&file, offset).unwrap(); 473 let result = on_eq_typed(&file, offset).unwrap();
474 let actual = result.edit.apply(&before); 474 let actual = result.edit.apply(&before);
475 assert_eq_text!(after, &actual); 475 assert_eq_text!(after, &actual);
@@ -513,7 +513,7 @@ fn foo() {
513 fn test_on_enter() { 513 fn test_on_enter() {
514 fn apply_on_enter(before: &str) -> Option<String> { 514 fn apply_on_enter(before: &str) -> Option<String> {
515 let (offset, before) = extract_offset(before); 515 let (offset, before) = extract_offset(before);
516 let file = File::parse(&before); 516 let file = SourceFileNode::parse(&before);
517 let result = on_enter(&file, offset)?; 517 let result = on_enter(&file, offset)?;
518 let actual = result.edit.apply(&before); 518 let actual = result.edit.apply(&before);
519 let actual = add_cursor(&actual, result.cursor_position.unwrap()); 519 let actual = add_cursor(&actual, result.cursor_position.unwrap());