From 079f39d07fd75e625a56c8a417bdc946cac389a6 Mon Sep 17 00:00:00 2001 From: sinkuu Date: Sat, 10 Sep 2016 14:02:05 +0900 Subject: Fix #550: `if` nested in tuple is indented oddly --- src/comment.rs | 8 ++++---- src/expr.rs | 9 +++++++-- 2 files changed, 11 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/comment.rs b/src/comment.rs index 979d3bef90e..e67a438cbcc 100644 --- a/src/comment.rs +++ b/src/comment.rs @@ -425,10 +425,10 @@ impl<'a> Iterator for UngroupedCommentCodeSlices<'a> { None => &self.slice[start_idx..], }; Some((if kind.is_comment() { - CodeCharKind::Comment - } else { - CodeCharKind::Normal - }, + CodeCharKind::Comment + } else { + CodeCharKind::Normal + }, start_idx, slice)) } diff --git a/src/expr.rs b/src/expr.rs index bece2ef91fe..a00baf21a84 100644 --- a/src/expr.rs +++ b/src/expr.rs @@ -1716,11 +1716,16 @@ pub fn rewrite_tuple<'a, I>(context: &RewriteContext, ::Target: Rewrite + Spanned + 'a { let indent = offset + 1; + let aligned = RewriteContext { block_indent: indent, ..context.clone() }; + // In case of length 1, need a trailing comma if items.len() == 1 { // 3 = "(" + ",)" let budget = try_opt!(width.checked_sub(3)); - return items.next().unwrap().rewrite(context, budget, indent).map(|s| format!("({},)", s)); + return items.next() + .unwrap() + .rewrite(&aligned, budget, indent) + .map(|s| format!("({},)", s)); } let list_lo = context.codemap.span_after(span, "("); @@ -1733,7 +1738,7 @@ pub fn rewrite_tuple<'a, I>(context: &RewriteContext, let inner_width = try_opt!(context.config .max_width .checked_sub(indent.width() + 1)); - item.rewrite(context, inner_width, indent) + item.rewrite(&aligned, inner_width, indent) }, list_lo, span.hi - BytePos(1)); -- cgit 1.4.1-3-g733a5