From: Aleksey Kladov Date: Sun, 4 Jul 2021 14:32:59 +0000 (+0300) Subject: minor: untangle complex condition X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=c4d2671767c0b8c8b8770b6628656d2e54af2e41;hp=13161ab738af83a60205ab26d9da9f7ea8db855e;p=rust.git minor: untangle complex condition --- diff --git a/crates/syntax/src/ted.rs b/crates/syntax/src/ted.rs index ae970f44f16..aee90d3574b 100644 --- a/crates/syntax/src/ted.rs +++ b/crates/syntax/src/ted.rs @@ -150,18 +150,17 @@ pub fn append_child_raw(node: &(impl Into + Clone), child: impl Elem fn ws_before(position: &Position, new: &SyntaxElement) -> Option { let prev = match &position.repr { PositionRepr::FirstChild(_) => return None, - PositionRepr::After(it) if it.kind() == SyntaxKind::L_CURLY => { - if new.kind() == SyntaxKind::USE { - if let Some(item_list) = it.parent().and_then(ast::ItemList::cast) { - let mut indent = IndentLevel::from_element(&item_list.syntax().clone().into()); - indent.0 += 1; - return Some(make::tokens::whitespace(&format!("\n{}", indent))); - } - } - it - } PositionRepr::After(it) => it, }; + + if prev.kind() == T!['{'] && new.kind() == SyntaxKind::USE { + if let Some(item_list) = prev.parent().and_then(ast::ItemList::cast) { + let mut indent = IndentLevel::from_element(&item_list.syntax().clone().into()); + indent.0 += 1; + return Some(make::tokens::whitespace(&format!("\n{}", indent))); + } + } + ws_between(prev, new) } fn ws_after(position: &Position, new: &SyntaxElement) -> Option {