From 0c027fea5e07c10d91a10063b41f137dab44801b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20Br=C3=B6nnimann?= Date: Tue, 25 Apr 2017 22:08:15 +0200 Subject: [PATCH] Add default values for various power level attributes. --- src/room/power_levels.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/room/power_levels.rs b/src/room/power_levels.rs index 14bc5cfe..d9ce7f3f 100644 --- a/src/room/power_levels.rs +++ b/src/room/power_levels.rs @@ -15,6 +15,7 @@ state_event! { #[derive(Clone, Debug, Deserialize, Serialize)] pub struct PowerLevelsEventContent { /// The level required to ban a user. + #[serde(default="default_power_level")] pub ban: u64, /// The level required to send specific event types. @@ -23,18 +24,23 @@ pub struct PowerLevelsEventContent { pub events: HashMap, /// The default level required to send message events. + #[serde(default)] pub events_default: u64, /// The level required to invite a user. + #[serde(default="default_power_level")] pub invite: u64, /// The level required to kick a user. + #[serde(default="default_power_level")] pub kick: u64, /// The level required to redact an event. + #[serde(default="default_power_level")] pub redact: u64, /// The default level required to send state events. + #[serde(default="default_power_level")] pub state_default: u64, /// The power levels for specific users. @@ -43,5 +49,10 @@ pub struct PowerLevelsEventContent { pub users: HashMap, /// The default power level for every user in the room. + #[serde(default)] pub users_default: u64, } + +fn default_power_level() -> u64 { + 50 +}