From 6b8cd40d07ce0cb52891b419ee2b6574caf1e70f Mon Sep 17 00:00:00 2001 From: topecongiro Date: Mon, 13 Nov 2017 11:07:09 +0900 Subject: [PATCH] Format where clause on unit struct --- src/items.rs | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/items.rs b/src/items.rs index 8aa63261ce5..de0dc763e1b 100644 --- a/src/items.rs +++ b/src/items.rs @@ -1095,8 +1095,20 @@ pub fn format_trait(context: &RewriteContext, item: &ast::Item, offset: Indent) fn format_unit_struct(context: &RewriteContext, p: &StructParts, offset: Indent) -> Option { let header_str = format_header(p.prefix, p.ident, p.vis); let generics_str = if let Some(generics) = p.generics { - let shape = Shape::indented(offset, context.config).offset_left(header_str.len())?; - rewrite_generics(context, generics, shape, generics.span)? + let hi = if generics.where_clause.predicates.is_empty() { + generics.span.hi() + } else { + generics.where_clause.span.hi() + }; + format_generics( + context, + generics, + context.config.item_brace_style(), + BracePos::None, + offset, + mk_sp(generics.span.lo(), hi), + last_line_width(&header_str), + )? } else { String::new() };