diff options
Diffstat (limited to 'src/primitive')
| -rw-r--r-- | src/primitive/bufferid.rs | 4 | ||||
| -rw-r--r-- | src/primitive/message.rs | 4 | ||||
| -rw-r--r-- | src/primitive/variant.rs | 7 |
3 files changed, 8 insertions, 7 deletions
diff --git a/src/primitive/bufferid.rs b/src/primitive/bufferid.rs index 88b56fa..8d76f5b 100644 --- a/src/primitive/bufferid.rs +++ b/src/primitive/bufferid.rs @@ -52,8 +52,8 @@ impl NetworkList for Vec<BufferId> { Ok(self.iter().map(|b| Variant::BufferId(*b)).collect()) } - fn from_network_list(input: &mut super::VariantList) -> Result<Self, ProtocolError> { - input.iter().map(|b| b.try_into()).collect() + fn from_network_list(input: super::VariantList) -> Result<Self, ProtocolError> { + input.into_iter().map(|b| b.try_into()).collect() } } diff --git a/src/primitive/message.rs b/src/primitive/message.rs index 819ddd1..5455908 100644 --- a/src/primitive/message.rs +++ b/src/primitive/message.rs @@ -206,12 +206,12 @@ where Ok(res) } - fn from_network_list(input: &mut VariantList) -> Result<Self, ProtocolError> { + fn from_network_list(input: VariantList) -> Result<Self, ProtocolError> { use itertools::Itertools; let mut res = HashMap::with_capacity(input.len() / 2); - input.iter().tuples().for_each(|(k, v)| { + input.into_iter().tuples().for_each(|(k, v)| { res.insert( match T::try_from(k.clone()) { Ok(it) => it, diff --git a/src/primitive/variant.rs b/src/primitive/variant.rs index a7db7c3..e332bf2 100644 --- a/src/primitive/variant.rs +++ b/src/primitive/variant.rs @@ -22,8 +22,9 @@ use libquassel_derive::From; /// /// ByteArray is de-/serialized as a C ByteArray. #[allow(non_camel_case_types, dead_code)] -#[derive(Clone, Debug, PartialEq, From)] +#[derive(Clone, Default, Debug, PartialEq, From)] pub enum Variant { + #[default] Unknown, #[from(ignore)] UserType(String, Vec<u8>), @@ -103,10 +104,10 @@ where Ok(res) } - fn from_network_list(input: &mut VariantList) -> Result<Self> { + fn from_network_list(input: VariantList) -> Result<Self> { let mut res = HashMap::with_capacity(input.len() / 2); - input.iter().tuples().for_each(|(k, v)| { + input.into_iter().tuples().for_each(|(k, v)| { res.insert( match T::try_from(k.clone()) { Ok(it) => it, |
