parent
e3203ef5e6
commit
f0f449d6ed
4 changed files with 27 additions and 2 deletions
|
|
@ -77,6 +77,7 @@ pub(crate) enum OverflowableItem<'a> {
|
|||
FieldDef(&'a ast::FieldDef),
|
||||
TuplePatField(&'a TuplePatField<'a>),
|
||||
Ty(&'a ast::Ty),
|
||||
Pat(&'a ast::Pat),
|
||||
}
|
||||
|
||||
impl<'a> Rewrite for OverflowableItem<'a> {
|
||||
|
|
@ -116,6 +117,7 @@ impl<'a> OverflowableItem<'a> {
|
|||
OverflowableItem::FieldDef(sf) => f(*sf),
|
||||
OverflowableItem::TuplePatField(pat) => f(*pat),
|
||||
OverflowableItem::Ty(ty) => f(*ty),
|
||||
OverflowableItem::Pat(pat) => f(*pat),
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -232,7 +234,7 @@ macro_rules! impl_into_overflowable_item_for_rustfmt_types {
|
|||
}
|
||||
}
|
||||
|
||||
impl_into_overflowable_item_for_ast_node!(Expr, GenericParam, NestedMetaItem, FieldDef, Ty);
|
||||
impl_into_overflowable_item_for_ast_node!(Expr, GenericParam, NestedMetaItem, FieldDef, Ty, Pat);
|
||||
impl_into_overflowable_item_for_rustfmt_types!([MacroArg], [SegmentParam, TuplePatField]);
|
||||
|
||||
pub(crate) fn into_overflowable_list<'a, T>(
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ use rustc_span::{BytePos, Span};
|
|||
|
||||
use crate::comment::{combine_strs_with_missing_comments, FindUncommented};
|
||||
use crate::config::lists::*;
|
||||
use crate::config::Version;
|
||||
use crate::expr::{can_be_overflowed_expr, rewrite_unary_prefix, wrap_struct_field};
|
||||
use crate::lists::{
|
||||
definitive_tactic, itemize_list, shape_for_tactic, struct_lit_formatting, struct_lit_shape,
|
||||
|
|
@ -232,7 +233,7 @@ impl Rewrite for Pat {
|
|||
rewrite_tuple_pat(pat_vec, Some(path_str), self.span, context, shape)
|
||||
}
|
||||
PatKind::Lit(ref expr) => expr.rewrite(context, shape),
|
||||
PatKind::Slice(ref slice_pat) => {
|
||||
PatKind::Slice(ref slice_pat) if context.config.version() == Version::One => {
|
||||
let rw: Vec<String> = slice_pat
|
||||
.iter()
|
||||
.map(|p| {
|
||||
|
|
@ -245,6 +246,15 @@ impl Rewrite for Pat {
|
|||
.collect();
|
||||
Some(format!("[{}]", rw.join(", ")))
|
||||
}
|
||||
PatKind::Slice(ref slice_pat) => overflow::rewrite_with_square_brackets(
|
||||
context,
|
||||
"",
|
||||
slice_pat.iter(),
|
||||
shape,
|
||||
self.span,
|
||||
None,
|
||||
None,
|
||||
),
|
||||
PatKind::Struct(ref qself, ref path, ref fields, ellipsis) => {
|
||||
rewrite_struct_pat(qself, path, fields, ellipsis, self.span, context, shape)
|
||||
}
|
||||
|
|
|
|||
4
tests/source/issue-4530.rs
Normal file
4
tests/source/issue-4530.rs
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
// rustfmt-version: Two
|
||||
fn main() {
|
||||
let [aaaaaaaaaaaaaaaaaaaaaaaaaa, bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, cccccccccccccccccccccccccc, ddddddddddddddddddddddddd] = panic!();
|
||||
}
|
||||
9
tests/target/issue-4530.rs
Normal file
9
tests/target/issue-4530.rs
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
// rustfmt-version: Two
|
||||
fn main() {
|
||||
let [
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaa,
|
||||
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb,
|
||||
cccccccccccccccccccccccccc,
|
||||
ddddddddddddddddddddddddd,
|
||||
] = panic!();
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue