Add leave_last field to ListItems
This commit is contained in:
parent
f9239dd630
commit
be38606c77
@ -466,6 +466,7 @@ where
|
||||
|item| item.rewrite(context, nested_shape),
|
||||
span.lo,
|
||||
span.hi,
|
||||
false,
|
||||
).collect::<Vec<_>>();
|
||||
|
||||
if items.is_empty() {
|
||||
@ -587,6 +588,7 @@ fn rewrite_closure_fn_decl(
|
||||
|arg| arg.rewrite(context, arg_shape),
|
||||
context.codemap.span_after(span, "|"),
|
||||
body.span.lo,
|
||||
false,
|
||||
);
|
||||
let item_vec = arg_items.collect::<Vec<_>>();
|
||||
// 1 = space between arguments and return type.
|
||||
@ -2190,6 +2192,7 @@ where
|
||||
|item| item.rewrite(context, shape),
|
||||
span.lo,
|
||||
span.hi,
|
||||
true,
|
||||
);
|
||||
let mut item_vec: Vec<_> = items.collect();
|
||||
|
||||
@ -2651,6 +2654,7 @@ fn rewrite_struct_lit<'a>(
|
||||
rewrite,
|
||||
body_lo,
|
||||
span.hi,
|
||||
false,
|
||||
);
|
||||
let item_vec = items.collect::<Vec<_>>();
|
||||
|
||||
@ -2803,6 +2807,7 @@ where
|
||||
|item| item.rewrite(context, nested_shape),
|
||||
list_lo,
|
||||
span.hi - BytePos(1),
|
||||
false,
|
||||
);
|
||||
let item_vec: Vec<_> = items.collect();
|
||||
let tactic = definitive_tactic(
|
||||
|
@ -442,6 +442,7 @@ fn rewrite_use_list(
|
||||
rewrite_path_item,
|
||||
context.codemap.span_after(span, "{"),
|
||||
span.hi,
|
||||
false,
|
||||
);
|
||||
items.extend(iter);
|
||||
items
|
||||
|
@ -469,6 +469,7 @@ impl<'a> FmtVisitor<'a> {
|
||||
|f| self.format_variant(f),
|
||||
body_lo,
|
||||
body_hi,
|
||||
false,
|
||||
);
|
||||
|
||||
let shape = Shape::indented(self.block_indent, self.config)
|
||||
@ -2207,6 +2208,7 @@ fn rewrite_args(
|
||||
},
|
||||
comment_span_start,
|
||||
span.hi,
|
||||
false,
|
||||
);
|
||||
|
||||
arg_items.extend(more_items);
|
||||
@ -2411,6 +2413,7 @@ fn rewrite_generics_inner(
|
||||
|&(_, ref str)| str.clone(),
|
||||
context.codemap.span_after(span, "<"),
|
||||
span.hi,
|
||||
false,
|
||||
);
|
||||
format_generics_item_list(context, items, shape, one_line_width)
|
||||
}
|
||||
@ -2554,6 +2557,7 @@ fn rewrite_where_clause_rfc_style(
|
||||
|pred| pred.rewrite(context, block_shape),
|
||||
span_start,
|
||||
span_end,
|
||||
false,
|
||||
);
|
||||
let comma_tactic = if where_clause_option.suppress_comma {
|
||||
SeparatorTactic::Never
|
||||
@ -2654,6 +2658,7 @@ fn rewrite_where_clause(
|
||||
|pred| pred.rewrite(context, Shape::legacy(budget, offset)),
|
||||
span_start,
|
||||
span_end,
|
||||
false,
|
||||
);
|
||||
let item_vec = items.collect::<Vec<_>>();
|
||||
// FIXME: we don't need to collect here if the where_layout isn't
|
||||
|
@ -454,6 +454,7 @@ where
|
||||
prev_span_end: BytePos,
|
||||
next_span_start: BytePos,
|
||||
terminator: &'a str,
|
||||
leave_last: bool,
|
||||
}
|
||||
|
||||
impl<'a, T, I, F1, F2, F3> Iterator for ListItems<'a, I, F1, F2, F3>
|
||||
@ -592,7 +593,11 @@ where
|
||||
ListItem {
|
||||
pre_comment: pre_comment,
|
||||
pre_comment_style: pre_comment_style,
|
||||
item: (self.get_item_string)(&item),
|
||||
item: if self.inner.peek().is_none() && self.leave_last {
|
||||
None
|
||||
} else {
|
||||
(self.get_item_string)(&item)
|
||||
},
|
||||
post_comment: post_comment,
|
||||
new_lines: new_lines,
|
||||
}
|
||||
@ -610,6 +615,7 @@ pub fn itemize_list<'a, T, I, F1, F2, F3>(
|
||||
get_item_string: F3,
|
||||
prev_span_end: BytePos,
|
||||
next_span_start: BytePos,
|
||||
leave_last: bool,
|
||||
) -> ListItems<'a, I, F1, F2, F3>
|
||||
where
|
||||
I: Iterator<Item = T>,
|
||||
@ -626,6 +632,7 @@ where
|
||||
prev_span_end: prev_span_end,
|
||||
next_span_start: next_span_start,
|
||||
terminator: terminator,
|
||||
leave_last: leave_last,
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -162,6 +162,7 @@ fn rewrite_struct_pat(
|
||||
|f| f.node.rewrite(context, v_shape),
|
||||
context.codemap.span_after(span, "{"),
|
||||
span.hi,
|
||||
false,
|
||||
);
|
||||
let item_vec = items.collect::<Vec<_>>();
|
||||
|
||||
@ -342,6 +343,7 @@ fn count_wildcard_suffix_len(
|
||||
|item| item.rewrite(context, shape),
|
||||
context.codemap.span_after(span, "("),
|
||||
span.hi - BytePos(1),
|
||||
false,
|
||||
).collect();
|
||||
|
||||
for item in items.iter().rev().take_while(|i| match i.item {
|
||||
|
@ -241,6 +241,7 @@ fn rewrite_segment(
|
||||
|seg| seg.rewrite(context, generics_shape),
|
||||
list_lo,
|
||||
span_hi,
|
||||
false,
|
||||
);
|
||||
let generics_str = try_opt!(format_generics_item_list(
|
||||
context,
|
||||
@ -344,6 +345,7 @@ where
|
||||
},
|
||||
list_lo,
|
||||
span.hi,
|
||||
false,
|
||||
);
|
||||
|
||||
let item_vec: Vec<_> = items.collect();
|
||||
|
@ -219,6 +219,7 @@ fn rewrite_aligned_items_inner<T: AlignedItem>(
|
||||
|field| field.rewrite_aligned_item(context, item_shape, field_prefix_max_width),
|
||||
span.lo,
|
||||
span.hi,
|
||||
false,
|
||||
).collect::<Vec<_>>();
|
||||
|
||||
let tactic = definitive_tactic(
|
||||
|
@ -818,6 +818,7 @@ impl Rewrite for ast::MetaItem {
|
||||
|nested_meta_item| nested_meta_item.rewrite(context, item_shape),
|
||||
self.span.lo,
|
||||
hi,
|
||||
false,
|
||||
);
|
||||
let item_vec = items.collect::<Vec<_>>();
|
||||
let fmt = ListFormatting {
|
||||
|
Loading…
x
Reference in New Issue
Block a user