JMAP protocol layer refactoring (part 2)

This commit is contained in:
mdecimus
2025-09-24 18:14:44 +02:00
parent 6c612f7e1c
commit a95010c42e
60 changed files with 2260 additions and 1747 deletions

View File

@@ -132,6 +132,15 @@ impl<'x> Base32Reader<'x> {
}
}
#[allow(clippy::should_implement_trait)]
pub fn from_iter(bytes: Iter<'x, u8>) -> Self {
Base32Reader {
bytes,
pos: 0,
last_byte: 0,
}
}
#[inline(always)]
fn map_byte(&mut self) -> Option<u8> {
match self.bytes.next() {

View File

@@ -5,7 +5,7 @@
*/
use rkyv::Archive;
use serde::{Deserialize, Serialize, de::DeserializeOwned, ser::SerializeMap};
use serde::{Deserialize, Serialize, ser::SerializeMap};
use std::{borrow::Borrow, cmp::Ordering, fmt, hash::Hash};
// A map implemented using vectors
@@ -304,7 +304,7 @@ struct VecMapVisitor<K, V> {
phantom: std::marker::PhantomData<(K, V)>,
}
impl<'de, K: Eq + PartialEq + DeserializeOwned, V: DeserializeOwned> serde::de::Visitor<'de>
impl<'de, K: Eq + PartialEq + Deserialize<'de>, V: Deserialize<'de>> serde::de::Visitor<'de>
for VecMapVisitor<K, V>
{
type Value = VecMap<K, V>;
@@ -326,7 +326,7 @@ impl<'de, K: Eq + PartialEq + DeserializeOwned, V: DeserializeOwned> serde::de::
}
}
impl<'de, K: Eq + PartialEq + DeserializeOwned, V: DeserializeOwned> Deserialize<'de>
impl<'de, K: Eq + PartialEq + Deserialize<'de>, V: Deserialize<'de>> Deserialize<'de>
for VecMap<K, V>
{
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>