@@ -19,7 +19,7 @@ use crate::source_map::SpanUtils;
19
19
use crate :: spanned:: Spanned ;
20
20
use crate :: utils:: {
21
21
contains_skip, extra_offset, first_line_width, inner_attributes, last_line_extendable, mk_sp,
22
- semicolon_for_expr, trimmed_last_line_width, unicode_str_width,
22
+ mk_sp_lo_plus_one , semicolon_for_expr, trimmed_last_line_width, unicode_str_width,
23
23
} ;
24
24
25
25
/// A simple wrapper type against `ast::Arm`. Used inside `write_list()`.
@@ -163,17 +163,14 @@ fn arm_comma(config: &Config, body: &ast::Expr, is_last: bool) -> &'static str {
163
163
fn collect_beginning_verts (
164
164
context : & RewriteContext < ' _ > ,
165
165
arms : & [ ast:: Arm ] ,
166
- span : Span ,
167
166
) -> Vec < Option < BytePos > > {
168
- let mut beginning_verts = Vec :: with_capacity ( arms. len ( ) ) ;
169
- let mut lo = context. snippet_provider . span_after ( span, "{" ) ;
170
- for arm in arms {
171
- let hi = arm. pat . span . lo ( ) ;
172
- let missing_span = mk_sp ( lo, hi) ;
173
- beginning_verts. push ( context. snippet_provider . opt_span_before ( missing_span, "|" ) ) ;
174
- lo = arm. span ( ) . hi ( ) ;
175
- }
176
- beginning_verts
167
+ arms. iter ( )
168
+ . map ( |a| {
169
+ context
170
+ . snippet_provider
171
+ . opt_span_before ( mk_sp_lo_plus_one ( a. pat . span . lo ( ) ) , "|" )
172
+ } )
173
+ . collect ( )
177
174
}
178
175
179
176
fn rewrite_match_arms (
@@ -191,7 +188,7 @@ fn rewrite_match_arms(
191
188
let is_last_iter = repeat ( false )
192
189
. take ( arm_len. saturating_sub ( 1 ) )
193
190
. chain ( repeat ( true ) ) ;
194
- let beginning_verts = collect_beginning_verts ( context, arms, span ) ;
191
+ let beginning_verts = collect_beginning_verts ( context, arms) ;
195
192
let items = itemize_list (
196
193
context. snippet_provider ,
197
194
arms. iter ( )
0 commit comments