Rollup merge of #118350 - DaniPopes:tuple-default, r=workingjubilee

Simplify Default for tuples

Doesn't need a separate block for each element
This commit is contained in:
Michael Goulet
2023-12-05 14:52:43 -05:00
committed by GitHub
+6 -9
View File
@@ -50,22 +50,19 @@ impl<$($T: Eq),+> Eq for ($($T,)+)
maybe_tuple_doc! {
$($T)+ @
#[unstable(feature = "structural_match", issue = "31434")]
impl<$($T: ConstParamTy),+> ConstParamTy for ($($T,)+)
{}
impl<$($T: ConstParamTy),+> ConstParamTy for ($($T,)+) {}
}
maybe_tuple_doc! {
$($T)+ @
#[unstable(feature = "structural_match", issue = "31434")]
impl<$($T),+> StructuralPartialEq for ($($T,)+)
{}
impl<$($T),+> StructuralPartialEq for ($($T,)+) {}
}
maybe_tuple_doc! {
$($T)+ @
#[unstable(feature = "structural_match", issue = "31434")]
impl<$($T),+> StructuralEq for ($($T,)+)
{}
impl<$($T),+> StructuralEq for ($($T,)+) {}
}
maybe_tuple_doc! {
@@ -118,7 +115,7 @@ fn cmp(&self, other: &($($T,)+)) -> Ordering {
impl<$($T: Default),+> Default for ($($T,)+) {
#[inline]
fn default() -> ($($T,)+) {
($({ let x: $T = Default::default(); x},)+)
($($T::default(),)+)
}
}
}
@@ -196,7 +193,7 @@ macro_rules! lexical_partial_cmp {
($a:expr, $b:expr, $($rest_a:expr, $rest_b:expr),+) => {
match ($a).partial_cmp(&$b) {
Some(Equal) => lexical_partial_cmp!($($rest_a, $rest_b),+),
ordering => ordering
ordering => ordering
}
};
($a:expr, $b:expr) => { ($a).partial_cmp(&$b) };
@@ -206,7 +203,7 @@ macro_rules! lexical_cmp {
($a:expr, $b:expr, $($rest_a:expr, $rest_b:expr),+) => {
match ($a).cmp(&$b) {
Equal => lexical_cmp!($($rest_a, $rest_b),+),
ordering => ordering
ordering => ordering
}
};
($a:expr, $b:expr) => { ($a).cmp(&$b) };