Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/syntax/src/parsing/reparsing.rs')
| -rw-r--r-- | crates/syntax/src/parsing/reparsing.rs | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/crates/syntax/src/parsing/reparsing.rs b/crates/syntax/src/parsing/reparsing.rs index e9567a838c..dca97a7f58 100644 --- a/crates/syntax/src/parsing/reparsing.rs +++ b/crates/syntax/src/parsing/reparsing.rs @@ -10,7 +10,7 @@ use parser::Reparser; use text_edit::Indel; use crate::{ - parsing::text_tree_sink::TextTreeSink, + parsing::text_tree_sink::build_tree, syntax_node::{GreenNode, GreenToken, NodeOrToken, SyntaxElement, SyntaxNode}, SyntaxError, SyntaxKind::*, @@ -94,11 +94,9 @@ fn reparse_block( return None; } - let mut tree_sink = TextTreeSink::new(lexed); + let tree_traversal = reparser.parse(&parser_tokens); - reparser.parse(&parser_tokens, &mut tree_sink); - - let (green, new_parser_errors) = tree_sink.finish(); + let (green, new_parser_errors, _eof) = build_tree(lexed, tree_traversal, false); Some((node.replace_with(green), new_parser_errors, node.text_range())) } |