aboutsummaryrefslogtreecommitdiff
path: root/crates/libsyntax2/src/lib.rs
diff options
context:
space:
mode:
authorbors[bot] <bors[bot]@users.noreply.github.com>2018-09-11 08:32:36 +0100
committerbors[bot] <bors[bot]@users.noreply.github.com>2018-09-11 08:32:36 +0100
commite240360ee282b4f5936748cc07d6ceb3be5d6bb2 (patch)
tree0affc5f30030d0702fb2bf6c4d9c0a84a5a6732f /crates/libsyntax2/src/lib.rs
parent505895a25f98423de07c3cec4793b66a19d098c7 (diff)
parentd0cfeb4f1616e125ca3a941f2dcf5dfbb5f2b03f (diff)
Merge #68
68: Implement incremental reparsing for remaining braced blocks r=matklad a=darksv Fixes #66 Co-authored-by: darksv <[email protected]>
Diffstat (limited to 'crates/libsyntax2/src/lib.rs')
-rw-r--r--crates/libsyntax2/src/lib.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/crates/libsyntax2/src/lib.rs b/crates/libsyntax2/src/lib.rs
index d955c01e7..fd58cb4fa 100644
--- a/crates/libsyntax2/src/lib.rs
+++ b/crates/libsyntax2/src/lib.rs
@@ -144,6 +144,21 @@ fn find_reparsable_node(node: SyntaxNodeRef, range: TextRange) -> Option<(Syntax
144 let res = match node.kind() { 144 let res = match node.kind() {
145 BLOCK => grammar::block, 145 BLOCK => grammar::block,
146 NAMED_FIELD_DEF_LIST => grammar::named_field_def_list, 146 NAMED_FIELD_DEF_LIST => grammar::named_field_def_list,
147 NAMED_FIELD_LIST => grammar::named_field_list,
148 ENUM_VARIANT_LIST => grammar::enum_variant_list,
149 MATCH_ARM_LIST => grammar::match_arm_list,
150 USE_TREE_LIST => grammar::use_tree_list,
151 EXTERN_ITEM_LIST => grammar::extern_item_list,
152 TOKEN_TREE if node.first_child().unwrap().kind() == L_CURLY => grammar::token_tree,
153 ITEM_LIST => {
154 let parent = node.parent().unwrap();
155 match parent.kind() {
156 IMPL_ITEM => grammar::impl_item_list,
157 TRAIT_DEF => grammar::trait_item_list,
158 MODULE => grammar::mod_item_list,
159 _ => return None,
160 }
161 },
147 _ => return None, 162 _ => return None,
148 }; 163 };
149 Some(res) 164 Some(res)