use config::lists::*;
use syntax::ast;
-use syntax::codemap::{BytePos, Span};
+use syntax::source_map::{BytePos, Span};
-use codemap::SpanUtils;
use comment::{combine_strs_with_missing_comments, contains_comment};
use expr::rewrite_field;
use items::{rewrite_struct_field, rewrite_struct_field_prefix};
use lists::{definitive_tactic, itemize_list, write_list, ListFormatting, Separator};
use rewrite::{Rewrite, RewriteContext};
use shape::{Indent, Shape};
+use source_map::SpanUtils;
use spanned::Spanned;
use utils::{contains_skip, is_attributes_extendable, mk_sp, rewrite_ident};
} else {
("", fields.len() - 1)
};
- let init = &fields[0..group_index + 1];
+ let init = &fields[0..=group_index];
let rest = &fields[group_index + 1..];
let init_last_pos = if rest.is_empty() {
span.hi()
one_line_width,
);
- let fmt = ListFormatting {
- tactic,
- separator: ",",
- trailing_separator: context.config.trailing_comma(),
- separator_place: SeparatorPlace::Back,
- shape: item_shape,
- ends_with_newline: true,
- preserve_newline: true,
- nested: false,
- config: context.config,
- };
+ let fmt = ListFormatting::new(item_shape, context.config)
+ .tactic(tactic)
+ .trailing_separator(context.config.trailing_comma())
+ .preserve_newline(true);
write_list(&items, &fmt)
}