Skip to content

Commit 2c63395

Browse files
chore: apply pattern parsing changes
1 parent cbd83b8 commit 2c63395

File tree

2 files changed

+10
-13
lines changed

2 files changed

+10
-13
lines changed

src/macros.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ fn parse_macro_arg<'a, 'b: 'a>(parser: &'a mut Parser<'b>) -> Option<MacroArg> {
132132
);
133133
parse_macro_arg!(
134134
Pat,
135-
|parser: &mut rustc_parse::parser::Parser<'b>| parser.parse_pat(None),
135+
|parser: &mut rustc_parse::parser::Parser<'b>| parser.parse_pat_no_top_alt(None),
136136
|x: ptr::P<ast::Pat>| Some(x)
137137
);
138138
// `parse_item` returns `Option<ptr::P<ast::Item>>`.

src/matches.rs

+9-12
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ use crate::source_map::SpanUtils;
1919
use crate::spanned::Spanned;
2020
use crate::utils::{
2121
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,
2323
};
2424

2525
/// 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 {
163163
fn collect_beginning_verts(
164164
context: &RewriteContext<'_>,
165165
arms: &[ast::Arm],
166-
span: Span,
167166
) -> 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()
177174
}
178175

179176
fn rewrite_match_arms(
@@ -191,7 +188,7 @@ fn rewrite_match_arms(
191188
let is_last_iter = repeat(false)
192189
.take(arm_len.saturating_sub(1))
193190
.chain(repeat(true));
194-
let beginning_verts = collect_beginning_verts(context, arms, span);
191+
let beginning_verts = collect_beginning_verts(context, arms);
195192
let items = itemize_list(
196193
context.snippet_provider,
197194
arms.iter()

0 commit comments

Comments
 (0)