From dba08bf898c79a90527a2c7c00b66cc5e80f675a Mon Sep 17 00:00:00 2001 From: Marcus Klaas Date: Wed, 14 Oct 2015 19:41:29 +0200 Subject: [PATCH] Indent uncontinued chains to block level --- src/chains.rs | 6 +++--- tests/source/hard-tabs.rs | 2 ++ tests/target/hard-tabs.rs | 5 +++++ 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/chains.rs b/src/chains.rs index 6ad6123408a..6122aa14614 100644 --- a/src/chains.rs +++ b/src/chains.rs @@ -45,13 +45,13 @@ pub fn rewrite_chain(mut expr: &ast::Expr, let parent_rewrite = try_opt!(expr.rewrite(context, width, offset)); let (extra_indent, extend) = if !parent_rewrite.contains('\n') && is_continuable(parent) || parent_rewrite.len() <= context.config.tab_spaces { - (parent_rewrite.len(), true) + (Indent::new(0, parent_rewrite.len()), true) } else { - (context.config.tab_spaces, false) + (Indent::new(context.config.tab_spaces, 0), false) }; let indent = offset + extra_indent; - let max_width = try_opt!(width.checked_sub(extra_indent)); + let max_width = try_opt!(width.checked_sub(extra_indent.width())); let mut rewrites = try_opt!(subexpr_list.iter() .rev() .map(|e| { diff --git a/tests/source/hard-tabs.rs b/tests/source/hard-tabs.rs index 3fe38a5e42a..d9a46800246 100644 --- a/tests/source/hard-tabs.rs +++ b/tests/source/hard-tabs.rs @@ -31,6 +31,8 @@ unsafe // So this is a very long comment. { } +let chain = funktion_kall().go_to_next_line_with_tab().go_to_next_line_with_tab().go_to_next_line_with_tab(); + let z = [xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx, yyyyyyyyyyyyyyyyyyyyyyyyyyy, zzzzzzzzzzzzzzzzzz, q]; fn generic(arg: T) -> &SomeType diff --git a/tests/target/hard-tabs.rs b/tests/target/hard-tabs.rs index e3160285c4d..c101f0bbf3c 100644 --- a/tests/target/hard-tabs.rs +++ b/tests/target/hard-tabs.rs @@ -50,6 +50,11 @@ fn main() { * Will it still format correctly? */ { } + let chain = funktion_kall() + .go_to_next_line_with_tab() + .go_to_next_line_with_tab() + .go_to_next_line_with_tab(); + let z = [xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx, yyyyyyyyyyyyyyyyyyyyyyyyyyy, zzzzzzzzzzzzzzzzzz,