From e95313eedb8f3c4fb64b48645255fd44a9c95691 Mon Sep 17 00:00:00 2001 From: Link Mauve Date: Wed, 10 Jun 2026 13:05:00 +0200 Subject: [PATCH] =?UTF-8?q?xmpp-parsers:=20Simplify=20MucUser=E2=80=99s=20?= =?UTF-8?q?code?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We can derive Default directly, and then implement new() based on it. skip-changelog: Internal change. --- parsers/src/muc/user.rs | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) diff --git a/parsers/src/muc/user.rs b/parsers/src/muc/user.rs index d10b87ce..60ee99d4 100644 --- a/parsers/src/muc/user.rs +++ b/parsers/src/muc/user.rs @@ -284,7 +284,7 @@ pub struct Decline { } /// The main muc#user element. -#[derive(FromXml, AsXml, Debug, PartialEq, Clone)] +#[derive(FromXml, AsXml, Debug, Default, PartialEq, Clone)] #[xml(namespace = ns::MUC_USER, name = "x")] pub struct MucUser { /// List of statuses applying to this item. @@ -304,21 +304,10 @@ pub struct MucUser { pub decline: Option, } -impl Default for MucUser { - fn default() -> Self { - Self::new() - } -} - impl MucUser { /// Creates an empty MucUser pub fn new() -> MucUser { - MucUser { - status: vec![], - items: vec![], - invite: None, - decline: None, - } + MucUser::default() } /// Set statuses for this MucUser @@ -423,12 +412,7 @@ mod tests { let elem: Element = "" .parse() .unwrap(); - let muc = MucUser { - status: vec![], - items: vec![], - invite: None, - decline: None, - }; + let muc = MucUser::new(); let elem2 = muc.into(); assert_eq!(elem, elem2); }