diff --git a/coverage/badge.svg b/coverage/badge.svg index d44513df..44768ee1 100644 --- a/coverage/badge.svg +++ b/coverage/badge.svg @@ -17,7 +17,7 @@ coverage coverage - 87.00% - 87.00% + 87.15% + 87.15% \ No newline at end of file diff --git a/coverage/benchmarks/benches/benchmarks.rs.html b/coverage/benchmarks/benches/benchmarks.rs.html index 15764c5c..7a93189e 100644 --- a/coverage/benchmarks/benches/benchmarks.rs.html +++ b/coverage/benchmarks/benches/benchmarks.rs.html @@ -720,7 +720,7 @@
- 5005 + 5013
                Some(Sentence(3..100).fake_with_rng(rand))
@@ -746,7 +746,7 @@
- 4995 + 4987
                None
@@ -863,7 +863,7 @@
- 2030 + 2016
            0 => Level::Trace,
@@ -876,7 +876,7 @@
- 1969 + 1935
            1 => Level::Debug,
@@ -889,7 +889,7 @@
- 1970 + 2066
            2 => Level::Info,
@@ -902,7 +902,7 @@
- 2020 + 1988
            3 => Level::Warn,
@@ -915,7 +915,7 @@
- 2011 + 1995
            4 => Level::Error,
@@ -3133,7 +3133,7 @@
diff --git a/coverage/benchmarks/benches/index.html b/coverage/benchmarks/benches/index.html index e47113df..16c4a6f6 100644 --- a/coverage/benchmarks/benches/index.html +++ b/coverage/benchmarks/benches/index.html @@ -74,7 +74,7 @@ diff --git a/coverage/benchmarks/examples/index.html b/coverage/benchmarks/examples/index.html index 375ac30b..52a1603b 100644 --- a/coverage/benchmarks/examples/index.html +++ b/coverage/benchmarks/examples/index.html @@ -74,7 +74,7 @@ diff --git a/coverage/benchmarks/examples/logs.rs.html b/coverage/benchmarks/examples/logs.rs.html index 6d20563a..7a0d669a 100644 --- a/coverage/benchmarks/examples/logs.rs.html +++ b/coverage/benchmarks/examples/logs.rs.html @@ -1903,7 +1903,7 @@
- 55284 + 55005
                Some(Sentence(3..100).fake_with_rng(rand))
@@ -1929,7 +1929,7 @@
- 54717 + 54996
                None
@@ -2046,7 +2046,7 @@
- 21998 + 21838
            0 => Level::Trace,
@@ -2059,7 +2059,7 @@
- 22147 + 22231
            1 => Level::Debug,
@@ -2072,7 +2072,7 @@
- 22047 + 21800
            2 => Level::Info,
@@ -2085,7 +2085,7 @@
- 21926 + 22160
            3 => Level::Warn,
@@ -2098,7 +2098,7 @@
- 21883 + 21972
            4 => Level::Error,
@@ -3172,7 +3172,7 @@
diff --git a/coverage/index.html b/coverage/index.html index 57aef027..00f0e3c7 100644 --- a/coverage/index.html +++ b/coverage/index.html @@ -15,7 +15,7 @@

Lines

- 87 %

+ 87.15 %

@@ -23,7 +23,7 @@

Functions

- 62.05 %

+ 62.22 %

@@ -124,20 +124,20 @@ - 86.26% + 86.42% - 86.26% + 86.42% - 3684 / 4271 + 3716 / 4300 - 62.1% - 1540 / 2480 + 62.28% + 1547 / 2484 100 0 / 0 @@ -146,7 +146,7 @@ diff --git a/coverage/pot/examples/index.html b/coverage/pot/examples/index.html index 66cce004..83158a2b 100644 --- a/coverage/pot/examples/index.html +++ b/coverage/pot/examples/index.html @@ -98,7 +98,7 @@ diff --git a/coverage/pot/examples/preshared-symbols.rs.html b/coverage/pot/examples/preshared-symbols.rs.html index 4f9ec1c3..05cbe30d 100644 --- a/coverage/pot/examples/preshared-symbols.rs.html +++ b/coverage/pot/examples/preshared-symbols.rs.html @@ -689,7 +689,7 @@ diff --git a/coverage/pot/examples/simple.rs.html b/coverage/pot/examples/simple.rs.html index be2b43b9..f1480e70 100644 --- a/coverage/pot/examples/simple.rs.html +++ b/coverage/pot/examples/simple.rs.html @@ -442,7 +442,7 @@ diff --git a/coverage/pot/src/de.rs.html b/coverage/pot/src/de.rs.html index 484ec299..16bb15f9 100644 --- a/coverage/pot/src/de.rs.html +++ b/coverage/pot/src/de.rs.html @@ -473,7 +473,7 @@
- 1431 + 1456
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
@@ -486,7 +486,7 @@
- 1431 + 1456
        f.debug_struct("Deserializer")
@@ -499,7 +499,7 @@
- 1431 + 1456
            .field("symbols", &self.symbols)
@@ -512,7 +512,7 @@
- 1431 + 1456
            .field("peeked_atom", &self.peeked_atom)
@@ -525,7 +525,7 @@
- 1431 + 1456
            .field("remaining_budget", &self.remaining_budget)
@@ -538,7 +538,7 @@
- 1431 + 1456
            .finish()
@@ -551,7 +551,7 @@
- 1431 + 1456
    }
@@ -629,7 +629,7 @@
- 136 + 138
    pub(crate) fn from_slice(input: &'de [u8], maximum_bytes_allocatable: usize) -> Result<Self> {
@@ -642,7 +642,7 @@
- 136 + 138
        Self::from_slice_with_symbols(input, SymbolMapRef::temporary(), maximum_bytes_allocatable)
@@ -655,7 +655,7 @@
- 136 + 138
    }
@@ -681,7 +681,7 @@
- 168 + 170
    fn from_slice_with_symbols(
@@ -694,7 +694,7 @@
- 168 + 170
        input: &'de [u8],
@@ -707,7 +707,7 @@
- 168 + 170
        symbols: SymbolMapRef<'s, 'de>,
@@ -720,7 +720,7 @@
- 168 + 170
        maximum_bytes_allocatable: usize,
@@ -733,7 +733,7 @@
- 168 + 170
    ) -> Result<Self> {
@@ -746,7 +746,7 @@
- 168 + 170
        Self::new(SliceReader::from(input), symbols, maximum_bytes_allocatable)
@@ -759,7 +759,7 @@
- 168 + 170
    }
@@ -824,7 +824,7 @@
- 123 + 125
    pub fn end_of_input(&self) -> bool {
@@ -837,7 +837,7 @@
- 123 + 125
        self.input.data.is_empty() && self.peeked_atom.is_empty()
@@ -850,7 +850,7 @@
- 123 + 125
    }
@@ -1071,7 +1071,7 @@
- 228 + 230
    pub(crate) fn new(
@@ -1084,7 +1084,7 @@
- 228 + 230
        input: R,
@@ -1097,7 +1097,7 @@
- 228 + 230
        symbols: SymbolMapRef<'s, 'de>,
@@ -1110,7 +1110,7 @@
- 228 + 230
        maximum_bytes_allocatable: usize,
@@ -1123,7 +1123,7 @@
- 228 + 230
    ) -> Result<Self> {
@@ -1136,7 +1136,7 @@
- 228 + 230
        let mut deserializer = Deserializer {
@@ -1149,7 +1149,7 @@
- 228 + 230
            input,
@@ -1162,7 +1162,7 @@
- 228 + 230
            symbols,
@@ -1175,7 +1175,7 @@
- 228 + 230
            peeked_atom: VecDeque::new(),
@@ -1188,7 +1188,7 @@
- 228 + 230
            remaining_budget: maximum_bytes_allocatable,
@@ -1201,7 +1201,7 @@
- 228 + 230
            scratch: Vec::new(),
@@ -1214,7 +1214,7 @@
- 228 + 230
        };
@@ -1227,7 +1227,7 @@
- 228 + 230
        deserializer.read_header()?;
@@ -1240,7 +1240,7 @@
- 227 + 229
        Ok(deserializer)
@@ -1253,7 +1253,7 @@
- 228 + 230
    }
@@ -1279,7 +1279,7 @@
- 228 + 230
    fn read_header(&mut self) -> Result<()> {
@@ -1292,7 +1292,7 @@
- 228 + 230
        let version = format::read_header(&mut self.input)?;
@@ -1305,7 +1305,7 @@
- 228 + 230
        if version <= CURRENT_VERSION {
@@ -1318,7 +1318,7 @@
- 227 + 229
            Ok(())
@@ -1370,7 +1370,7 @@
- 228 + 230
    }
@@ -1396,7 +1396,7 @@
- 180792 + 180804
    fn read_atom(&mut self) -> Result<Atom<'de>> {
@@ -1409,7 +1409,7 @@
- 180792 + 180804
        if let Some(peeked) = self.peeked_atom.pop_front() {
@@ -1448,7 +1448,7 @@
- 160759 + 160771
            format::read_atom(
@@ -1461,7 +1461,7 @@
- 160759 + 160771
                &mut self.input,
@@ -1474,7 +1474,7 @@
- 160759 + 160771
                &mut self.remaining_budget,
@@ -1487,7 +1487,7 @@
- 160759 + 160771
                &mut self.scratch,
@@ -1500,7 +1500,7 @@
- 160759 + 160771
            )
@@ -1526,7 +1526,7 @@
- 180792 + 180804
    }
@@ -1747,7 +1747,7 @@
- 80254 + 80258
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(visitor)))]
@@ -2306,7 +2306,7 @@
- 38 + 50
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(visitor)))]
@@ -7636,7 +7636,7 @@
- 35033 + 35039
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(visitor)))]
@@ -8052,7 +8052,7 @@
- 25025 + 25031
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(visitor)))]
@@ -11588,7 +11588,7 @@
- 10053 + 10058
    fn new(de: &'a mut Deserializer<'s, 'de, R>, count: Option<usize>) -> Self {
@@ -11601,7 +11601,7 @@
- 10053 + 10058
        Self {
@@ -11614,7 +11614,7 @@
- 10053 + 10058
            de,
@@ -11627,7 +11627,7 @@
- 10053 + 10058
            count,
@@ -11640,7 +11640,7 @@
- 10053 + 10058
            consumed: 0,
@@ -11653,7 +11653,7 @@
- 10053 + 10058
            eof: false,
@@ -11666,7 +11666,7 @@
- 10053 + 10058
        }
@@ -11679,7 +11679,7 @@
- 10053 + 10058
    }
@@ -11705,7 +11705,7 @@
- 90334 + 90346
    fn check_is_eof(&mut self) -> Result<bool> {
@@ -11718,7 +11718,7 @@
- 90334 + 90346
        if self.eof {
@@ -11744,7 +11744,7 @@
- 90334 + 90346
        } else if let Some(count) = self.count {
@@ -11757,7 +11757,7 @@
- 90328 + 90340
            if count == self.consumed {
@@ -11770,7 +11770,7 @@
- 10043 + 10048
                self.eof = true;
@@ -11783,7 +11783,7 @@
- 10043 + 10048
                return Ok(true);
@@ -11796,7 +11796,7 @@
- 80285 + 80292
            }
@@ -11952,7 +11952,7 @@
- 80289 + 80296
        Ok(false)
@@ -11965,7 +11965,7 @@
- 90334 + 90346
    }
@@ -12017,7 +12017,7 @@
- 488 + 503
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
@@ -12030,7 +12030,7 @@
- 488 + 503
        f.debug_struct("AtomList")
@@ -12043,7 +12043,7 @@
- 488 + 503
            .field("de", &self.de)
@@ -12056,7 +12056,7 @@
- 488 + 503
            .field("consumed", &self.consumed)
@@ -12069,7 +12069,7 @@
- 488 + 503
            .field("count", &self.count)
@@ -12082,7 +12082,7 @@
- 488 + 503
            .field("eof", &self.eof)
@@ -12095,7 +12095,7 @@
- 488 + 503
            .finish()
@@ -12108,7 +12108,7 @@
- 488 + 503
    }
@@ -12186,7 +12186,7 @@
- 10056 + 10062
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(seed)))]
@@ -12381,7 +12381,7 @@
- 12 + 14
    fn size_hint(&self) -> Option<usize> {
@@ -12394,7 +12394,7 @@
- 12 + 14
        self.count
@@ -12407,7 +12407,7 @@
- 12 + 14
    }
@@ -12485,7 +12485,7 @@
- 80278 + 80284
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(seed)))]
@@ -12667,7 +12667,7 @@
- 70245 + 70248
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(seed)))]
@@ -12810,7 +12810,7 @@
- 4 + 7
    fn size_hint(&self) -> Option<usize> {
@@ -12823,7 +12823,7 @@
- 4 + 7
        self.count
@@ -12836,7 +12836,7 @@
- 4 + 7
    }
@@ -13008,7 +13008,7 @@
-
        // Have the seed deserialize the next atom, which should be the symbol.
+
        // Enum variants that have associated data emit a Named atom followed by
-
        let atom = self.peek_atom()?;
+
        // a mapping of the name and associated data. To parse this, we simply
-
        match atom.kind {
+
        // need to skip the Named atom.
-
            Kind::Special if matches!(atom.nucleus, Some(Nucleus::Named)) => {
+
        let atom = self.peek_atom()?;
-
                self.read_atom()?;
+
        if atom.kind == Kind::Special && matches!(atom.nucleus, Some(Nucleus::Named)) {
-
                let val = seed.deserialize(&mut *self)?;
+
            self.read_atom()?;
-
                Ok((val, self))
+
        }
-
            }
+

             
-
            Kind::Symbol => {
+
        let val = seed.deserialize(&mut *self)?;
-
                let val = seed.deserialize(&mut *self)?;
+
        Ok((val, self))
-
                Ok((val, self))
+
    }
-
            }
+
}
-
            _ => Err(Error::custom(format!(
+

             
-
                "expected Named, got {:?}",
+
impl<'a, 's, 'de, R: Reader<'de>> VariantAccess<'de> for &'a mut Deserializer<'s, 'de, R> {
-
                atom.kind
+
    type Error = Error;
-
            ))),
+

             
1014
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 10008
-
-
        }
+
+
    #[cfg_attr(feature = "tracing", instrument)]
-
    }
+
    #[inline]
-
}
+
    fn unit_variant(self) -> Result<()> {
-

+                
        Ok(())
-
impl<'a, 's, 'de, R: Reader<'de>> VariantAccess<'de> for &'a mut Deserializer<'s, 'de, R> {
+
    }
-
    type Error = Error;
+

             
1020
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 2
-
-

+            
+
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(seed)))]
1021
- 10008 + class="column is-1 is-narrow p-0 has-text-centered has-text-white has-background-white"> +
-
-
    #[cfg_attr(feature = "tracing", instrument)]
+
+
    #[inline]
-
    #[inline]
+
    fn newtype_variant_seed<T>(self, seed: T) -> Result<T::Value>
-
    fn unit_variant(self) -> Result<()> {
+
    where
-
        Ok(())
+
        T: DeserializeSeed<'de>,
-
    }
+
    {
-

+                
        seed.deserialize(self)
1027
- 2 + class="column is-1 is-narrow p-0 has-text-centered has-text-white has-background-white"> +
-
-
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(seed)))]
+
+
    }
-
    #[inline]
+

             
1029
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 2
-
-
    fn newtype_variant_seed<T>(self, seed: T) -> Result<T::Value>
+
+
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(visitor)))]
-
    where
+
    #[inline]
-
        T: DeserializeSeed<'de>,
+
    fn tuple_variant<V>(self, _len: usize, visitor: V) -> Result<V::Value>
-
    {
+
    where
-
        seed.deserialize(self)
+
        V: Visitor<'de>,
-
    }
+
    {
-

+                
        de::Deserializer::deserialize_seq(self, visitor)
1036
- 2 + class="column is-1 is-narrow p-0 has-text-centered has-text-white has-background-white"> +
-
-
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(visitor)))]
+
+
    }
-
    #[inline]
+

             
1038
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 2
-
-
    fn tuple_variant<V>(self, _len: usize, visitor: V) -> Result<V::Value>
+
+
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(visitor)))]
-
    where
+
    #[inline]
-
        V: Visitor<'de>,
+
    fn struct_variant<V>(self, _fields: &'static [&'static str], visitor: V) -> Result<V::Value>
-
    {
+
    where
-
        de::Deserializer::deserialize_seq(self, visitor)
+
        V: Visitor<'de>,
-
    }
+
    {
-

+                
        de::Deserializer::deserialize_map(self, visitor)
1045
- 2 + class="column is-1 is-narrow p-0 has-text-centered has-text-white has-background-white"> +
-
-
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(visitor)))]
+
+
    }
-
    #[inline]
+
}
-
    fn struct_variant<V>(self, _fields: &'static [&'static str], visitor: V) -> Result<V::Value>
+

             
-
    where
+
/// A reference to a [`SymbolList`].
-
        V: Visitor<'de>,
+
#[derive(Debug)]
-
    {
+
pub struct SymbolMapRef<'a, 'de>(SymbolMapRefPrivate<'a, 'de>);
-
        de::Deserializer::deserialize_map(self, visitor)
+

             
-
    }
+
#[derive(Debug)]
-
}
+
enum SymbolMapRefPrivate<'a, 'de> {
-

+                
    /// A reference to a temporary symbol list, which is able to borrow from the
-
/// A reference to a [`SymbolList`].
+
    /// source data.
-
#[derive(Debug)]
+
    Temporary(SymbolList<'de>),
-
pub struct SymbolMapRef<'a, 'de>(SymbolMapRefPrivate<'a, 'de>);
+
    /// A reference to a persistent symbol list that retains symbols across
-

+                
    /// multiple deserialization sessions.
-
#[derive(Debug)]
+
    Persistent(&'a mut SymbolMap),
-
enum SymbolMapRefPrivate<'a, 'de> {
+
}
-
    /// A reference to a temporary symbol list, which is able to borrow from the
+

             
-
    /// source data.
+
impl<'a, 'de> SymbolMapRef<'a, 'de> {
1063
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 211
-
-
    Temporary(SymbolList<'de>),
+
+
    pub(crate) const fn temporary() -> Self {
1064
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 211
-
-
    /// A reference to a persistent symbol list that retains symbols across
+
+
        Self(SymbolMapRefPrivate::Temporary(SymbolList::new()))
1065
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 211
-
-
    /// multiple deserialization sessions.
+
+
    }
-
    Persistent(&'a mut SymbolMap),
+

             
-
}
+
    #[allow(clippy::cast_possible_truncation)]
1068
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 80054
-
-

+            
+
    fn visit_symbol_id<V>(&self, symbol_id: u64, visitor: V) -> Result<V::Value>
1069
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 80054
-
-
impl<'a, 'de> SymbolMapRef<'a, 'de> {
+
+
    where
- 209 + 80054
-
    pub(crate) const fn temporary() -> Self {
+
        V: Visitor<'de>,
- 209 + 80054
-
        Self(SymbolMapRefPrivate::Temporary(SymbolList::new()))
+
    {
- 209 + 80054
-
    }
+
        match &self.0 {
1073
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 80014
-
-

+            
+
            SymbolMapRefPrivate::Temporary(vec) => {
1074
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 80014
-
-
    #[allow(clippy::cast_possible_truncation)]
+
+
                let symbol = vec
- 80054 + 80014
-
    fn visit_symbol_id<V>(&self, symbol_id: u64, visitor: V) -> Result<V::Value>
+
                    .get(symbol_id as usize)
- 80054 + 80014
-
    where
+
                    .ok_or(Error::UnknownSymbol(symbol_id))?;
- 80054 + 80014
-
        V: Visitor<'de>,
+
                match symbol {
- 80054 + 80001
-
    {
+
                    SymbolStr::Data(symbol) => visitor.visit_borrowed_str(symbol),
- 80054 + 13
-
        match &self.0 {
+
                    SymbolStr::InList(symbol) => visitor.visit_str(symbol),
-
- 80014 -
-
-
            SymbolMapRefPrivate::Temporary(vec) => {
-
-
-
- 1081 -
-
- 80014 -
-
-
                let symbol = vec
-
-
-
- 1082 -
-
- 80014 -
-
-
                    .get(symbol_id as usize)
-
-
-
- 1083 -
-
- 80014 -
-
-
                    .ok_or(Error::UnknownSymbol(symbol_id))?;
-
-
-
- 1084 -
-
- 80014 -
-
-
                match symbol {
-
-
-
- 1085 -
-
- 80001 -
-
-
                    SymbolStr::Data(symbol) => visitor.visit_borrowed_str(symbol),
-
-
-
- 1086 -
-
- 13 -
-
-
                    SymbolStr::InList(symbol) => visitor.visit_str(symbol),
-
-
-
- 1087 -
@@ -14170,8 +14079,8 @@
- 1088 + id="1081"> + 1081
@@ -14183,8 +14092,8 @@
- 1089 + id="1082"> + 1082
@@ -14196,8 +14105,8 @@
- 1090 + id="1083"> + 1083
@@ -14209,8 +14118,8 @@
- 1091 + id="1084"> + 1084
@@ -14222,8 +14131,8 @@
- 1092 + id="1085"> + 1085
@@ -14235,8 +14144,8 @@
- 1093 + id="1086"> + 1086
@@ -14248,8 +14157,8 @@
- 1094 + id="1087"> + 1087
@@ -14261,8 +14170,8 @@
- 1095 + id="1088"> + 1088
@@ -14274,8 +14183,8 @@
- 1096 + id="1089"> + 1089
@@ -14287,8 +14196,8 @@
- 1097 + id="1090"> + 1090
@@ -14300,8 +14209,8 @@
- 1098 + id="1091"> + 1091
@@ -14313,8 +14222,8 @@
- 1099 + id="1092"> + 1092
@@ -14326,8 +14235,8 @@
- 1100 + id="1093"> + 1093
@@ -14339,8 +14248,8 @@
- 1101 + id="1094"> + 1094
@@ -14352,8 +14261,8 @@
- 1102 + id="1095"> + 1095
@@ -14365,8 +14274,8 @@
- 1103 + id="1096"> + 1096
@@ -14378,8 +14287,8 @@
- 1104 + id="1097"> + 1097
@@ -14391,8 +14300,8 @@
- 1105 + id="1098"> + 1098
@@ -14404,12 +14313,12 @@
- 1106 + id="1099"> + 1099
- 239 + 243
    fn push_borrowed(&mut self, symbol: &'de str) {
@@ -14417,12 +14326,12 @@
- 1107 + id="1100"> + 1100
- 239 + 243
        match &mut self.0 {
@@ -14430,12 +14339,12 @@
- 1108 + id="1101"> + 1101
- 192 + 196
            SymbolMapRefPrivate::Temporary(vec) => vec.push_borrowed(symbol),
@@ -14443,8 +14352,8 @@
- 1109 + id="1102"> + 1102
@@ -14456,8 +14365,8 @@
- 1110 + id="1103"> + 1103
@@ -14469,12 +14378,12 @@
- 1111 + id="1104"> + 1104
- 239 + 243
    }
@@ -14482,8 +14391,8 @@
- 1112 + id="1105"> + 1105
@@ -14495,8 +14404,8 @@
- 1113 + id="1106"> + 1106
@@ -14508,8 +14417,8 @@
- 1114 + id="1107"> + 1107
@@ -14521,8 +14430,8 @@
- 1115 + id="1108"> + 1108
@@ -14534,8 +14443,8 @@
- 1116 + id="1109"> + 1109
@@ -14547,8 +14456,8 @@
- 1117 + id="1110"> + 1110
@@ -14560,8 +14469,8 @@
- 1118 + id="1111"> + 1111
@@ -14573,8 +14482,8 @@
- 1119 + id="1112"> + 1112
@@ -14586,8 +14495,8 @@
- 1120 + id="1113"> + 1113
@@ -14599,8 +14508,8 @@
- 1121 + id="1114"> + 1114
@@ -14612,8 +14521,8 @@
- 1122 + id="1115"> + 1115
@@ -14625,8 +14534,8 @@
- 1123 + id="1116"> + 1116
@@ -14638,8 +14547,8 @@
- 1124 + id="1117"> + 1117
@@ -14651,8 +14560,8 @@
- 1125 + id="1118"> + 1118
@@ -14664,8 +14573,8 @@
- 1126 + id="1119"> + 1119
@@ -14677,8 +14586,8 @@
- 1127 + id="1120"> + 1120
@@ -14690,8 +14599,8 @@
- 1128 + id="1121"> + 1121
@@ -14703,8 +14612,8 @@
- 1129 + id="1122"> + 1122
@@ -14716,8 +14625,8 @@
- 1130 + id="1123"> + 1123
@@ -14729,8 +14638,8 @@
- 1131 + id="1124"> + 1124
@@ -14742,12 +14651,12 @@
- 1132 + id="1125"> + 1125
- 215 + 217
    pub const fn new() -> Self {
@@ -14755,12 +14664,12 @@
- 1133 + id="1126"> + 1126
- 215 + 217
        Self {
@@ -14768,12 +14677,12 @@
- 1134 + id="1127"> + 1127
- 215 + 217
            buffer: String::new(),
@@ -14781,12 +14690,12 @@
- 1135 + id="1128"> + 1128
- 215 + 217
            entries: Vec::new(),
@@ -14794,12 +14703,12 @@
- 1136 + id="1129"> + 1129
- 215 + 217
        }
@@ -14807,12 +14716,12 @@
- 1137 + id="1130"> + 1130
- 215 + 217
    }
@@ -14820,8 +14729,8 @@
- 1138 + id="1131"> + 1131
@@ -14833,8 +14742,8 @@
- 1139 + id="1132"> + 1132
@@ -14846,8 +14755,8 @@
- 1140 + id="1133"> + 1133
@@ -14859,12 +14768,12 @@
- 1141 + id="1134"> + 1134
- 192 + 196
    pub fn push_borrowed(&mut self, borrowed: &'de str) {
@@ -14872,12 +14781,12 @@
- 1142 + id="1135"> + 1135
- 192 + 196
        self.entries.push(SymbolListEntry::Borrowed(borrowed));
@@ -14885,12 +14794,12 @@
- 1143 + id="1136"> + 1136
- 192 + 196
    }
@@ -14898,8 +14807,8 @@
- 1144 + id="1137"> + 1137
@@ -14911,8 +14820,8 @@
- 1145 + id="1138"> + 1138
@@ -14924,8 +14833,8 @@
- 1146 + id="1139"> + 1139
@@ -14937,8 +14846,8 @@
- 1147 + id="1140"> + 1140
@@ -14950,8 +14859,8 @@
- 1148 + id="1141"> + 1141
@@ -14963,8 +14872,8 @@
- 1149 + id="1142"> + 1142
@@ -14976,8 +14885,8 @@
- 1150 + id="1143"> + 1143
@@ -14989,8 +14898,8 @@
- 1151 + id="1144"> + 1144
@@ -15002,8 +14911,8 @@
- 1152 + id="1145"> + 1145
@@ -15015,8 +14924,8 @@
- 1153 + id="1146"> + 1146
@@ -15028,8 +14937,8 @@
- 1154 + id="1147"> + 1147
@@ -15041,8 +14950,8 @@
- 1155 + id="1148"> + 1148
@@ -15054,8 +14963,8 @@
- 1156 + id="1149"> + 1149
@@ -15067,8 +14976,8 @@
- 1157 + id="1150"> + 1150
@@ -15080,8 +14989,8 @@
- 1158 + id="1151"> + 1151
@@ -15093,8 +15002,8 @@
- 1159 + id="1152"> + 1152
@@ -15106,8 +15015,8 @@
- 1160 + id="1153"> + 1153
@@ -15119,8 +15028,8 @@
- 1161 + id="1154"> + 1154
@@ -15132,8 +15041,8 @@
- 1162 + id="1155"> + 1155
@@ -15145,8 +15054,8 @@
- 1163 + id="1156"> + 1156
@@ -15158,8 +15067,8 @@
- 1164 + id="1157"> + 1157
@@ -15171,8 +15080,8 @@
- 1165 + id="1158"> + 1158
@@ -15184,8 +15093,8 @@
- 1166 + id="1159"> + 1159
@@ -15197,8 +15106,8 @@
- 1167 + id="1160"> + 1160
@@ -15210,8 +15119,8 @@
- 1168 + id="1161"> + 1161
@@ -15223,8 +15132,8 @@
- 1169 + id="1162"> + 1162
@@ -15236,8 +15145,8 @@
- 1170 + id="1163"> + 1163
@@ -15249,8 +15158,8 @@
- 1171 + id="1164"> + 1164
@@ -15262,8 +15171,8 @@
- 1172 + id="1165"> + 1165
@@ -15275,8 +15184,8 @@
- 1173 + id="1166"> + 1166
@@ -15288,8 +15197,8 @@
- 1174 + id="1167"> + 1167
@@ -15301,8 +15210,8 @@
- 1175 + id="1168"> + 1168
@@ -15314,8 +15223,8 @@
- 1176 + id="1169"> + 1169
@@ -15327,8 +15236,8 @@
- 1177 + id="1170"> + 1170
@@ -15340,8 +15249,8 @@
- 1178 + id="1171"> + 1171
@@ -15353,8 +15262,8 @@
- 1179 + id="1172"> + 1172
@@ -15366,8 +15275,8 @@
- 1180 + id="1173"> + 1173
@@ -15379,8 +15288,8 @@
- 1181 + id="1174"> + 1174
@@ -15392,8 +15301,8 @@
- 1182 + id="1175"> + 1175
@@ -15405,8 +15314,8 @@
- 1183 + id="1176"> + 1176
@@ -15418,8 +15327,8 @@
- 1184 + id="1177"> + 1177
@@ -15431,8 +15340,8 @@
- 1185 + id="1178"> + 1178
@@ -15444,8 +15353,8 @@
- 1186 + id="1179"> + 1179
@@ -15457,8 +15366,8 @@
- 1187 + id="1180"> + 1180
@@ -15470,8 +15379,8 @@
- 1188 + id="1181"> + 1181
@@ -15483,8 +15392,8 @@
- 1189 + id="1182"> + 1182
@@ -15496,8 +15405,8 @@
- 1190 + id="1183"> + 1183
@@ -15509,8 +15418,8 @@
- 1191 + id="1184"> + 1184
@@ -15522,8 +15431,8 @@
- 1192 + id="1185"> + 1185
@@ -15535,8 +15444,8 @@
- 1193 + id="1186"> + 1186
@@ -15548,8 +15457,8 @@
- 1194 + id="1187"> + 1187
@@ -15561,8 +15470,8 @@
- 1195 + id="1188"> + 1188
@@ -15574,8 +15483,8 @@
- 1196 + id="1189"> + 1189
@@ -15587,8 +15496,8 @@
- 1197 + id="1190"> + 1190
@@ -15600,8 +15509,8 @@
- 1198 + id="1191"> + 1191
@@ -15613,8 +15522,8 @@
- 1199 + id="1192"> + 1192
@@ -15626,8 +15535,8 @@
- 1200 + id="1193"> + 1193
@@ -15639,8 +15548,8 @@
- 1201 + id="1194"> + 1194
@@ -15652,8 +15561,8 @@
- 1202 + id="1195"> + 1195
@@ -15665,8 +15574,8 @@
- 1203 + id="1196"> + 1196
@@ -15678,8 +15587,8 @@
- 1204 + id="1197"> + 1197
@@ -15691,8 +15600,8 @@
- 1205 + id="1198"> + 1198
@@ -15704,8 +15613,8 @@
- 1206 + id="1199"> + 1199
@@ -15717,8 +15626,8 @@
- 1207 + id="1200"> + 1200
@@ -15730,8 +15639,8 @@
- 1208 + id="1201"> + 1201
@@ -15743,8 +15652,8 @@
- 1209 + id="1202"> + 1202
@@ -15756,8 +15665,8 @@
- 1210 + id="1203"> + 1203
@@ -15769,8 +15678,8 @@
- 1211 + id="1204"> + 1204
@@ -15782,8 +15691,8 @@
- 1212 + id="1205"> + 1205
@@ -15795,8 +15704,8 @@
- 1213 + id="1206"> + 1206
@@ -15808,8 +15717,8 @@
- 1214 + id="1207"> + 1207
@@ -15821,8 +15730,8 @@
- 1215 + id="1208"> + 1208
@@ -15834,8 +15743,8 @@
- 1216 + id="1209"> + 1209
@@ -15847,8 +15756,8 @@
- 1217 + id="1210"> + 1210
@@ -15860,8 +15769,8 @@
- 1218 + id="1211"> + 1211
@@ -15873,8 +15782,8 @@
- 1219 + id="1212"> + 1212
@@ -15886,8 +15795,8 @@
- 1220 + id="1213"> + 1213
@@ -15899,8 +15808,8 @@
- 1221 + id="1214"> + 1214
@@ -15912,8 +15821,8 @@
- 1222 + id="1215"> + 1215
@@ -15925,8 +15834,8 @@
- 1223 + id="1216"> + 1216
@@ -15938,8 +15847,8 @@
- 1224 + id="1217"> + 1217
@@ -15951,8 +15860,8 @@
- 1225 + id="1218"> + 1218
@@ -15964,8 +15873,8 @@
- 1226 + id="1219"> + 1219
@@ -15977,8 +15886,8 @@
- 1227 + id="1220"> + 1220
@@ -15990,8 +15899,8 @@
- 1228 + id="1221"> + 1221
@@ -16003,8 +15912,8 @@
- 1229 + id="1222"> + 1222
@@ -16016,8 +15925,8 @@
- 1230 + id="1223"> + 1223
@@ -16029,8 +15938,8 @@
- 1231 + id="1224"> + 1224
@@ -16042,8 +15951,8 @@
- 1232 + id="1225"> + 1225
@@ -16055,8 +15964,8 @@
- 1233 + id="1226"> + 1226
@@ -16068,8 +15977,8 @@
- 1234 + id="1227"> + 1227
@@ -16081,8 +15990,8 @@
- 1235 + id="1228"> + 1228
@@ -16094,8 +16003,8 @@
- 1236 + id="1229"> + 1229
@@ -16107,8 +16016,8 @@
- 1237 + id="1230"> + 1230
@@ -16120,8 +16029,8 @@
- 1238 + id="1231"> + 1231
@@ -16133,8 +16042,8 @@
- 1239 + id="1232"> + 1232
@@ -16146,8 +16055,8 @@
- 1240 + id="1233"> + 1233
@@ -16159,8 +16068,8 @@
- 1241 + id="1234"> + 1234
@@ -16172,8 +16081,8 @@
- 1242 + id="1235"> + 1235
@@ -16185,8 +16094,8 @@
- 1243 + id="1236"> + 1236
@@ -16198,8 +16107,8 @@
- 1244 + id="1237"> + 1237
@@ -16211,8 +16120,8 @@
- 1245 + id="1238"> + 1238
@@ -16224,8 +16133,8 @@
- 1246 + id="1239"> + 1239
@@ -16237,8 +16146,8 @@
- 1247 + id="1240"> + 1240
@@ -16250,8 +16159,8 @@
- 1248 + id="1241"> + 1241
@@ -16263,8 +16172,8 @@
- 1249 + id="1242"> + 1242
@@ -16276,8 +16185,8 @@
- 1250 + id="1243"> + 1243
@@ -16289,8 +16198,8 @@
- 1251 + id="1244"> + 1244
@@ -16302,8 +16211,8 @@
- 1252 + id="1245"> + 1245
@@ -16315,8 +16224,8 @@
- 1253 + id="1246"> + 1246
@@ -16328,8 +16237,8 @@
- 1254 + id="1247"> + 1247
@@ -16341,8 +16250,8 @@
- 1255 + id="1248"> + 1248
@@ -16354,8 +16263,8 @@
- 1256 + id="1249"> + 1249
@@ -16367,8 +16276,8 @@
- 1257 + id="1250"> + 1250
@@ -16380,8 +16289,8 @@
- 1258 + id="1251"> + 1251
@@ -16393,8 +16302,8 @@
- 1259 + id="1252"> + 1252
@@ -16406,8 +16315,8 @@
- 1260 + id="1253"> + 1253
@@ -16419,8 +16328,8 @@
- 1261 + id="1254"> + 1254
@@ -16432,8 +16341,8 @@
- 1262 + id="1255"> + 1255
@@ -16445,8 +16354,8 @@
- 1263 + id="1256"> + 1256
@@ -16458,8 +16367,8 @@
- 1264 + id="1257"> + 1257
@@ -16471,8 +16380,8 @@
- 1265 + id="1258"> + 1258
@@ -16484,8 +16393,8 @@
- 1266 + id="1259"> + 1259
@@ -16497,8 +16406,8 @@
- 1267 + id="1260"> + 1260
@@ -16510,8 +16419,8 @@
- 1268 + id="1261"> + 1261
@@ -16523,8 +16432,8 @@
- 1269 + id="1262"> + 1262
@@ -16536,8 +16445,8 @@
- 1270 + id="1263"> + 1263
@@ -16549,8 +16458,8 @@
- 1271 + id="1264"> + 1264
@@ -16562,8 +16471,8 @@
- 1272 + id="1265"> + 1265
@@ -16575,8 +16484,8 @@
- 1273 + id="1266"> + 1266
@@ -16588,8 +16497,8 @@
- 1274 + id="1267"> + 1267
@@ -16601,8 +16510,8 @@
- 1275 + id="1268"> + 1268
@@ -16614,8 +16523,8 @@
- 1276 + id="1269"> + 1269
@@ -16627,8 +16536,8 @@
- 1277 + id="1270"> + 1270
@@ -16640,8 +16549,8 @@
- 1278 + id="1271"> + 1271
@@ -16653,8 +16562,8 @@
- 1279 + id="1272"> + 1272
@@ -16666,8 +16575,8 @@
- 1280 + id="1273"> + 1273
@@ -16679,8 +16588,8 @@
- 1281 + id="1274"> + 1274
@@ -16692,8 +16601,8 @@
- 1282 + id="1275"> + 1275
@@ -16705,8 +16614,8 @@
- 1283 + id="1276"> + 1276
@@ -16718,8 +16627,8 @@
- 1284 + id="1277"> + 1277
@@ -16731,8 +16640,8 @@
- 1285 + id="1278"> + 1278
@@ -16744,8 +16653,8 @@
- 1286 + id="1279"> + 1279
@@ -16757,8 +16666,8 @@
- 1287 + id="1280"> + 1280
@@ -16770,8 +16679,8 @@
- 1288 + id="1281"> + 1281
@@ -16783,8 +16692,8 @@
- 1289 + id="1282"> + 1282
@@ -16796,8 +16705,8 @@
- 1290 + id="1283"> + 1283
@@ -16809,8 +16718,8 @@
- 1291 + id="1284"> + 1284
@@ -16822,8 +16731,8 @@
- 1292 + id="1285"> + 1285
@@ -16835,8 +16744,8 @@
- 1293 + id="1286"> + 1286
@@ -16848,8 +16757,8 @@
- 1294 + id="1287"> + 1287
@@ -16861,8 +16770,8 @@
- 1295 + id="1288"> + 1288
@@ -16874,8 +16783,8 @@
- 1296 + id="1289"> + 1289
@@ -16887,8 +16796,8 @@
- 1297 + id="1290"> + 1290
@@ -16900,8 +16809,8 @@
- 1298 + id="1291"> + 1291
@@ -16913,8 +16822,8 @@
- 1299 + id="1292"> + 1292
@@ -16926,8 +16835,8 @@
- 1300 + id="1293"> + 1293
@@ -16939,8 +16848,8 @@
- 1301 + id="1294"> + 1294
@@ -16952,8 +16861,8 @@
- 1302 + id="1295"> + 1295
@@ -16965,8 +16874,8 @@
- 1303 + id="1296"> + 1296
@@ -16978,8 +16887,8 @@
- 1304 + id="1297"> + 1297
@@ -16991,8 +16900,8 @@
- 1305 + id="1298"> + 1298
@@ -17004,8 +16913,8 @@
- 1306 + id="1299"> + 1299
@@ -17017,8 +16926,8 @@
- 1307 + id="1300"> + 1300
@@ -17030,8 +16939,8 @@
- 1308 + id="1301"> + 1301
@@ -17043,8 +16952,8 @@
- 1309 + id="1302"> + 1302
@@ -17056,8 +16965,8 @@
- 1310 + id="1303"> + 1303
@@ -17069,8 +16978,8 @@
- 1311 + id="1304"> + 1304
@@ -17082,8 +16991,8 @@
- 1312 + id="1305"> + 1305
@@ -17095,8 +17004,8 @@
- 1313 + id="1306"> + 1306
@@ -17108,8 +17017,8 @@
- 1314 + id="1307"> + 1307
@@ -17121,8 +17030,8 @@
- 1315 + id="1308"> + 1308
@@ -17134,8 +17043,8 @@
- 1316 + id="1309"> + 1309
@@ -17147,7 +17056,7 @@
-

Date: 2024-08-11 01:26

+

Date: 2024-08-11 13:30

diff --git a/coverage/pot/src/error.rs.html b/coverage/pot/src/error.rs.html index e95a587c..641ff5cb 100644 --- a/coverage/pot/src/error.rs.html +++ b/coverage/pot/src/error.rs.html @@ -1547,7 +1547,7 @@
-

Date: 2024-08-11 01:26

+

Date: 2024-08-11 13:30

diff --git a/coverage/pot/src/format.rs.html b/coverage/pot/src/format.rs.html index b84ddc51..c4da4d6d 100644 --- a/coverage/pot/src/format.rs.html +++ b/coverage/pot/src/format.rs.html @@ -23,7 +23,7 @@

Functions

- 64.23 %

+ 64.72 %

@@ -226,7 +226,7 @@
- 1659148 + 1659790
fn write_tiny_atom_header<W: WriteBytesExt>(
@@ -239,7 +239,7 @@
- 1659148 + 1659790
    mut writer: W,
@@ -252,7 +252,7 @@
- 1659148 + 1659790
    kind: Kind,
@@ -265,7 +265,7 @@
- 1659148 + 1659790
    arg: u8,
@@ -278,7 +278,7 @@
- 1659148 + 1659790
) -> std::io::Result<usize> {
@@ -291,7 +291,7 @@
- 1659148 + 1659790
    // Kind is the 3 bits.
@@ -304,7 +304,7 @@
- 1659148 + 1659790
    let mut first_byte = (kind as u8) << 5;
@@ -317,7 +317,7 @@
- 1659148 + 1659790
    if arg > 0 {
@@ -330,7 +330,7 @@
- 1588724 + 1589079
        debug_assert!(arg < 0x10);
@@ -343,7 +343,7 @@
- 1588724 + 1589079
        first_byte |= arg & 0b1111;
@@ -356,7 +356,7 @@
- 70424 + 70711
    }
@@ -382,7 +382,7 @@
- 1659148 + 1659790
    writer.write_all(&[first_byte])?;
@@ -395,7 +395,7 @@
- 1659148 + 1659790
    Ok(1)
@@ -408,7 +408,7 @@
- 1659148 + 1659790
}
@@ -473,7 +473,7 @@
- 1963505 + 1963514
pub fn write_atom_header<W: WriteBytesExt>(
@@ -486,7 +486,7 @@
- 1963505 + 1963514
    mut writer: W,
@@ -499,7 +499,7 @@
- 1963505 + 1963514
    kind: Kind,
@@ -512,7 +512,7 @@
- 1963505 + 1963514
    mut arg: u64,
@@ -525,7 +525,7 @@
- 1963505 + 1963514
) -> std::io::Result<usize> {
@@ -538,7 +538,7 @@
- 1963505 + 1963514
    if arg < 0x10 {
@@ -551,7 +551,7 @@
- 1378879 + 1379519
        write_tiny_atom_header(writer, kind, arg as u8)
@@ -590,7 +590,7 @@
- 584626 + 583995
        let mut first_byte = (kind as u8) << 5;
@@ -603,7 +603,7 @@
- 584626 + 583995
        // The last 4 bits are the first 4 bits of the arg. We also know
@@ -616,7 +616,7 @@
- 584626 + 583995
        // that we're longer than one byte, due to the original match.
@@ -629,7 +629,7 @@
- 584626 + 583995
        first_byte |= arg as u8 & 0b1111;
@@ -642,7 +642,7 @@
- 584626 + 583995
        arg >>= 4;
@@ -655,7 +655,7 @@
- 584626 + 583995
        first_byte |= 0b10000;
@@ -668,7 +668,7 @@
- 584626 + 583995

@@ -681,7 +681,7 @@
             
- 584626 + 583995
        let mut second = arg as u8 & 0x7F;
@@ -694,7 +694,7 @@
- 584626 + 583995
        arg >>= 7;
@@ -707,7 +707,7 @@
- 584626 + 583995
        if arg == 0 {
@@ -720,7 +720,7 @@
- 584568 + 583937
            writer.write_all(&[first_byte, second])?;
@@ -733,7 +733,7 @@
- 584568 + 583937
            return Ok(2);
@@ -1617,7 +1617,7 @@
- 1963505 + 1963514
}
@@ -1669,7 +1669,7 @@
- 160842 + 160854
pub fn read_atom_header<R: ReadBytesExt>(reader: &mut R) -> Result<(Kind, u64), Error> {
@@ -1682,7 +1682,7 @@
- 160842 + 160854
    let first_byte = reader.read_u8()?;
@@ -1695,7 +1695,7 @@
- 160842 + 160854
    let kind = Kind::from_u8(first_byte >> 5)?;
@@ -1708,7 +1708,7 @@
- 160842 + 160854
    let mut arg = u64::from(first_byte & 0b1111);
@@ -1721,7 +1721,7 @@
- 160842 + 160854
    if first_byte & 0b10000 != 0 {
@@ -1734,7 +1734,7 @@
- 42190 + 42034
        let mut bytes_remaining = 9;
@@ -1747,7 +1747,7 @@
- 42190 + 42034
        let mut offset = 4;
@@ -1773,7 +1773,7 @@
- 42427 + 42271
            let byte = reader.read_u8()?;
@@ -1786,7 +1786,7 @@
- 42427 + 42271
            let data = byte & 0x7f;
@@ -1799,7 +1799,7 @@
- 42427 + 42271
            arg |= u64::from(data) << offset;
@@ -1812,7 +1812,7 @@
- 42427 + 42271
            offset += 7;
@@ -1825,7 +1825,7 @@
- 42427 + 42271
            bytes_remaining -= 1;
@@ -1838,7 +1838,7 @@
- 42427 + 42271
            if data == byte || bytes_remaining == 0 {
@@ -1851,7 +1851,7 @@
- 42190 + 42034
                break;
@@ -1890,7 +1890,7 @@
- 118652 + 118820
    }
@@ -1916,7 +1916,7 @@
- 160842 + 160854
    Ok((kind, arg))
@@ -1929,7 +1929,7 @@
- 160842 + 160854
}
@@ -2436,7 +2436,7 @@
- 160858 + 160870
    pub const fn from_u8(kind: u8) -> Result<Self, Error> {
@@ -2449,7 +2449,7 @@
- 160858 + 160870
        match kind {
@@ -2462,7 +2462,7 @@
- 15062 + 15060
            0 => Ok(Self::Special),
@@ -2488,7 +2488,7 @@
- 20177 + 20179
            2 => Ok(Self::UInt),
@@ -2514,7 +2514,7 @@
- 19 + 21
            4 => Ok(Self::Sequence),
@@ -2540,7 +2540,7 @@
- 80255 + 80259
            6 => Ok(Self::Symbol),
@@ -2553,7 +2553,7 @@
- 35055 + 35061
            7 => Ok(Self::Bytes),
@@ -2592,7 +2592,7 @@
- 160858 + 160870
    }
@@ -2969,7 +2969,7 @@
- 15062 + 15060
    fn try_from(value: u64) -> Result<Self, Self::Error> {
@@ -2982,7 +2982,7 @@
- 15062 + 15060
        match value {
@@ -2995,7 +2995,7 @@
- 5017 + 5012
            0 => Ok(Self::None),
@@ -3047,7 +3047,7 @@
- 10015 + 10018
            4 => Ok(Self::Named),
@@ -3112,7 +3112,7 @@
- 15062 + 15060
    }
@@ -3424,7 +3424,7 @@
- 1176 + 1178
pub fn write_header<W: WriteBytesExt>(mut writer: W, version: u8) -> std::io::Result<usize> {
@@ -3437,7 +3437,7 @@
- 1176 + 1178
    writer.write_u32::<BigEndian>(0x506F_7400 | u32::from(version))?;
@@ -3450,7 +3450,7 @@
- 1176 + 1178
    Ok(4)
@@ -3463,7 +3463,7 @@
- 1176 + 1178
}
@@ -3528,7 +3528,7 @@
- 230 + 232
pub fn read_header<R: ReadBytesExt>(reader: &mut R) -> Result<u8, Error> {
@@ -3541,7 +3541,7 @@
- 230 + 232
    let header = reader.read_u32::<BigEndian>()?;
@@ -3554,7 +3554,7 @@
- 230 + 232
    if header & 0x506F_7400 == 0x506F_7400 {
@@ -3567,7 +3567,7 @@
- 229 + 231
        let version = (header & 0xFF) as u8;
@@ -3580,7 +3580,7 @@
- 229 + 231
        Ok(version)
@@ -3632,7 +3632,7 @@
- 230 + 232
}
@@ -3671,7 +3671,7 @@
- 209738 + 209998
pub fn write_special<W: WriteBytesExt>(writer: W, special: Special) -> std::io::Result<usize> {
@@ -3684,7 +3684,7 @@
- 209738 + 209998
    write_atom_header(writer, Kind::Special, special as u64)
@@ -3697,7 +3697,7 @@
- 209738 + 209998
}
@@ -3749,7 +3749,7 @@
- 69708 + 69965
pub fn write_none<W: WriteBytesExt>(writer: W) -> std::io::Result<usize> {
@@ -3762,7 +3762,7 @@
- 69708 + 69965
    write_special(writer, Special::None)
@@ -3775,7 +3775,7 @@
- 69708 + 69965
}
@@ -3905,7 +3905,7 @@
- 140015 + 140018
pub fn write_named<W: WriteBytesExt>(writer: W) -> std::io::Result<usize> {
@@ -3918,7 +3918,7 @@
- 140015 + 140018
    write_special(writer, Special::Named)
@@ -3931,7 +3931,7 @@
- 140015 + 140018
}
@@ -5296,7 +5296,7 @@
- 648 + 678
pub fn write_u8<W: WriteBytesExt>(mut writer: W, value: u8) -> std::io::Result<usize> {
@@ -5309,7 +5309,7 @@
- 648 + 678
    let header_len = write_tiny_atom_header(&mut writer, Kind::UInt, 0)?;
@@ -5322,7 +5322,7 @@
- 648 + 678
    writer
@@ -5335,7 +5335,7 @@
- 648 + 678
        .write_u8(value)
@@ -5348,7 +5348,7 @@
- 648 + 678
        .map(|_| std::mem::size_of::<u8>() + header_len)
@@ -5361,7 +5361,7 @@
- 648 + 678
}
@@ -5413,7 +5413,7 @@
- 140093 + 140095
pub fn write_u16<W: WriteBytesExt>(mut writer: W, value: u16) -> std::io::Result<usize> {
@@ -5426,7 +5426,7 @@
- 140093 + 140095
    if let Ok(value) = u8::try_from(value) {
@@ -5439,7 +5439,7 @@
- 620 + 650
        write_u8(writer, value)
@@ -5465,7 +5465,7 @@
- 139473 + 139445
        let header_len = write_tiny_atom_header(&mut writer, Kind::UInt, 1)?;
@@ -5478,7 +5478,7 @@
- 139473 + 139445
        writer
@@ -5491,7 +5491,7 @@
- 139473 + 139445
            .write_u16::<LittleEndian>(value)
@@ -5504,7 +5504,7 @@
- 139473 + 139445
            .map(|_| std::mem::size_of::<u16>() + header_len)
@@ -5530,7 +5530,7 @@
- 140093 + 140095
}
@@ -5582,7 +5582,7 @@
- 83 + 85
pub fn write_u24<W: WriteBytesExt>(mut writer: W, value: u32) -> std::io::Result<usize> {
@@ -5595,7 +5595,7 @@
- 83 + 85
    if let Ok(value) = u16::try_from(value) {
@@ -5608,7 +5608,7 @@
- 75 + 77
        write_u16(writer, value)
@@ -5699,7 +5699,7 @@
- 83 + 85
}
@@ -5751,7 +5751,7 @@
- 92 + 94
pub fn write_u32<W: WriteBytesExt>(mut writer: W, value: u32) -> std::io::Result<usize> {
@@ -5764,7 +5764,7 @@
- 92 + 94
    if value < 2_u32.pow(24) {
@@ -5777,7 +5777,7 @@
- 83 + 85
        write_u24(writer, value)
@@ -5868,7 +5868,7 @@
- 92 + 94
}
@@ -5920,7 +5920,7 @@
- 67 + 72
pub fn write_u48<W: WriteBytesExt>(mut writer: W, value: u64) -> std::io::Result<usize> {
@@ -5933,7 +5933,7 @@
- 67 + 72
    if let Ok(value) = u32::try_from(value) {
@@ -5946,7 +5946,7 @@
- 61 + 63
        write_u32(writer, value)
@@ -5972,7 +5972,7 @@
- 6 + 9
        let header_len = write_tiny_atom_header(&mut writer, Kind::UInt, 5)?;
@@ -5985,7 +5985,7 @@
- 6 + 9
        writer
@@ -5998,7 +5998,7 @@
- 6 + 9
            .write_u48::<LittleEndian>(value)
@@ -6011,7 +6011,7 @@
- 6 + 9
            .map(|_| 6 + header_len)
@@ -6037,7 +6037,7 @@
- 67 + 72
}
@@ -6089,7 +6089,7 @@
- 140079 + 140081
pub fn write_u64<W: WriteBytesExt>(mut writer: W, value: u64) -> std::io::Result<usize> {
@@ -6102,7 +6102,7 @@
- 140079 + 140081
    if value < 2_u64.pow(48) {
@@ -6115,7 +6115,7 @@
- 67 + 72
        write_u48(writer, value)
@@ -6141,7 +6141,7 @@
- 140012 + 140009
        let header_len = write_tiny_atom_header(&mut writer, Kind::UInt, 7)?;
@@ -6154,7 +6154,7 @@
- 140012 + 140009
        writer
@@ -6167,7 +6167,7 @@
- 140012 + 140009
            .write_u64::<LittleEndian>(value)
@@ -6180,7 +6180,7 @@
- 140012 + 140009
            .map(|_| std::mem::size_of::<u64>() + header_len)
@@ -6206,7 +6206,7 @@
- 140079 + 140081
}
@@ -7025,7 +7025,7 @@
- 490329 + 490072
pub fn write_str<W: WriteBytesExt>(writer: W, value: &str) -> std::io::Result<usize> {
@@ -7038,7 +7038,7 @@
- 490329 + 490072
    write_bytes(writer, value.as_bytes())
@@ -7051,7 +7051,7 @@
- 490329 + 490072
}
@@ -7103,7 +7103,7 @@
- 490341 + 490084
pub fn write_bytes<W: WriteBytesExt>(mut writer: W, value: &[u8]) -> std::io::Result<usize> {
@@ -7116,7 +7116,7 @@
- 490341 + 490084
    let header_len = write_atom_header(&mut writer, Kind::Bytes, value.len() as u64)?;
@@ -7129,7 +7129,7 @@
- 490341 + 490084
    writer.write_all(value)?;
@@ -7142,7 +7142,7 @@
- 490341 + 490084
    Ok(value.len() + header_len)
@@ -7155,7 +7155,7 @@
- 490341 + 490084
}
@@ -8962,7 +8962,7 @@
- 45 + 54
            InnerInteger::U8(value) => Ok(*value as u16),
@@ -8975,7 +8975,7 @@
- 9977 + 9968
            InnerInteger::U16(value) => Ok(*value),
@@ -12030,7 +12030,7 @@
- 20314 + 20316
    pub fn read_from<R: ReadBytesExt>(
@@ -12043,7 +12043,7 @@
- 20314 + 20316
        kind: Kind,
@@ -12056,7 +12056,7 @@
- 20314 + 20316
        byte_len: usize,
@@ -12069,7 +12069,7 @@
- 20314 + 20316
        reader: &mut R,
@@ -12082,7 +12082,7 @@
- 20314 + 20316
    ) -> Result<Self, Error> {
@@ -12095,7 +12095,7 @@
- 20314 + 20316
        match kind {
@@ -12238,7 +12238,7 @@
- 20176 + 20178
            Kind::UInt => match byte_len {
@@ -12251,7 +12251,7 @@
- 149 + 160
                1 => Ok(InnerInteger::U8(reader.read_u8()?)),
@@ -12264,7 +12264,7 @@
- 9979 + 9970
                2 => Ok(InnerInteger::U16(reader.read_u16::<LittleEndian>()?)),
@@ -12303,7 +12303,7 @@
- 4 + 5
                6 => Ok(InnerInteger::U64(reader.read_u48::<LittleEndian>()?)),
@@ -12316,7 +12316,7 @@
- 10016 + 10015
                8 => Ok(InnerInteger::U64(reader.read_u64::<LittleEndian>()?)),
@@ -12394,7 +12394,7 @@
- 20314 + 20316
        .map(Integer)
@@ -12407,7 +12407,7 @@
- 20314 + 20316
    }
@@ -12901,7 +12901,7 @@
- 53 + 56
    fn from(value: u8) -> Self {
@@ -12914,7 +12914,7 @@
- 53 + 56
        Self(InnerInteger::U8(value))
@@ -12927,7 +12927,7 @@
- 53 + 56
    }
@@ -13642,7 +13642,7 @@
- 160759 + 160771
pub fn read_atom<'de, R: Reader<'de>>(
@@ -13655,7 +13655,7 @@
- 160759 + 160771
    reader: &mut R,
@@ -13668,7 +13668,7 @@
- 160759 + 160771
    remaining_budget: &mut usize,
@@ -13681,7 +13681,7 @@
- 160759 + 160771
    scratch: &mut Vec<u8>,
@@ -13694,7 +13694,7 @@
- 160759 + 160771
) -> Result<Atom<'de>, Error> {
@@ -13707,7 +13707,7 @@
- 160759 + 160771
    let (kind, arg) = read_atom_header(reader)?;
@@ -13720,7 +13720,7 @@
- 160759 + 160771
    Ok(match kind {
@@ -13733,7 +13733,7 @@
- 90305 + 90311
        Kind::Sequence | Kind::Map | Kind::Symbol => Atom {
@@ -13746,7 +13746,7 @@
- 90305 + 90311
            kind,
@@ -13759,7 +13759,7 @@
- 90305 + 90311
            arg,
@@ -13772,7 +13772,7 @@
- 90305 + 90311
            nucleus: None,
@@ -13785,7 +13785,7 @@
- 90305 + 90311
        },
@@ -13811,7 +13811,7 @@
- 15061 + 15059
            kind,
@@ -13824,7 +13824,7 @@
- 15061 + 15059
            arg,
@@ -13837,7 +13837,7 @@
- 15061 + 15059
            nucleus: match Special::try_from(arg)? {
@@ -13850,7 +13850,7 @@
- 5017 + 5012
                Special::None => None,
@@ -13902,7 +13902,7 @@
- 10015 + 10018
                Special::Named => Some(Nucleus::Named),
@@ -13980,7 +13980,7 @@
- 20296 + 20298
            let bytes = arg as usize + 1;
@@ -13993,7 +13993,7 @@
- 20296 + 20298
            update_budget(remaining_budget, in_memory_int_size(bytes))?;
@@ -14019,7 +14019,7 @@
- 20296 + 20298
                kind,
@@ -14032,7 +14032,7 @@
- 20296 + 20298
                arg,
@@ -14045,7 +14045,7 @@
- 20296 + 20298
                nucleus: Some(Nucleus::Integer(Integer::read_from(kind, bytes, reader)?)),
@@ -14214,7 +14214,7 @@
- 35054 + 35060
            let bytes = arg as usize;
@@ -14227,7 +14227,7 @@
- 35054 + 35060
            update_budget(remaining_budget, bytes)?;
@@ -14240,7 +14240,7 @@
- 35052 + 35058
            let bytes = reader.buffered_read_bytes(bytes, scratch)?;
@@ -14253,7 +14253,7 @@
- 35051 + 35057
            Atom {
@@ -14266,7 +14266,7 @@
- 35051 + 35057
                kind,
@@ -14279,7 +14279,7 @@
- 35051 + 35057
                arg,
@@ -14292,7 +14292,7 @@
- 35051 + 35057
                nucleus: Some(Nucleus::Bytes(bytes)),
@@ -14305,7 +14305,7 @@
- 35051 + 35057
            }
@@ -14344,7 +14344,7 @@
- 160759 + 160771
}
@@ -14383,7 +14383,7 @@
- 20339 + 20341
pub(crate) const fn in_memory_int_size(encoded_length: usize) -> usize {
@@ -14396,7 +14396,7 @@
- 20339 + 20341
    // Some integers are stored more compact than we can represent them in memory
@@ -14409,7 +14409,7 @@
- 20339 + 20341
    match encoded_length {
@@ -14435,7 +14435,7 @@
- 12 + 13
        6 => 8,
@@ -14448,7 +14448,7 @@
- 20310 + 20311
        other => other,
@@ -14474,7 +14474,7 @@
- 20339 + 20341
}
@@ -14513,7 +14513,7 @@
- 55393 + 55401
pub(crate) fn update_budget(budget: &mut usize, read_amount: usize) -> Result<(), Error> {
@@ -14526,7 +14526,7 @@
- 55393 + 55401
    if let Some(remaining) = budget.checked_sub(read_amount) {
@@ -14539,7 +14539,7 @@
- 55390 + 55398
        *budget = remaining;
@@ -14552,7 +14552,7 @@
- 55390 + 55398
        Ok(())
@@ -14604,7 +14604,7 @@
- 55393 + 55401
}
@@ -23985,7 +23985,7 @@
-

Date: 2024-08-11 01:26

+

Date: 2024-08-11 13:30

diff --git a/coverage/pot/src/index.html b/coverage/pot/src/index.html index bcda2558..567ff6c5 100644 --- a/coverage/pot/src/index.html +++ b/coverage/pot/src/index.html @@ -15,7 +15,7 @@

Lines

- 86.26 %

+ 86.42 %

@@ -23,7 +23,7 @@

Functions

- 62.1 %

+ 62.28 %

@@ -112,8 +112,8 @@ 1098 / 1098 - 64.23% - 264 / 411 + 64.72% + 266 / 411 100 0 / 0 @@ -124,20 +124,20 @@ - 93.98% + 98.8% - 93.98% + 98.8% - 78 / 83 + 82 / 83 - 94.86% - 240 / 253 + 95.29% + 243 / 255 100 0 / 0 @@ -172,20 +172,20 @@ - 78.41% + 78.58% - 78.41% + 78.58% - 465 / 593 + 466 / 593 - 60.05% - 242 / 403 + 60.15% + 243 / 404 100 0 / 0 @@ -196,20 +196,20 @@ - 100% + 99.68% - 100% + 99.68% - 599 / 599 + 626 / 628 - 64.68% - 141 / 218 + 64.84% + 142 / 219 100 0 / 0 @@ -242,7 +242,7 @@
-

Date: 2024-08-11 01:26

+

Date: 2024-08-11 13:30

diff --git a/coverage/pot/src/lib.rs.html b/coverage/pot/src/lib.rs.html index 61dc7153..adb1a1ee 100644 --- a/coverage/pot/src/lib.rs.html +++ b/coverage/pot/src/lib.rs.html @@ -15,7 +15,7 @@

Lines

- 93.98 %

+ 98.8 %

@@ -23,7 +23,7 @@

Functions

- 94.86 %

+ 95.29 %

@@ -1097,7 +1097,7 @@
- 130 + 132
pub fn from_slice<'a, T>(serialized: &'a [u8]) -> Result<T>
@@ -1110,7 +1110,7 @@
- 130 + 132
where
@@ -1123,7 +1123,7 @@
- 130 + 132
    T: Deserialize<'a>,
@@ -1136,7 +1136,7 @@
- 130 + 132
{
@@ -1149,7 +1149,7 @@
- 130 + 132
    Config::default().deserialize(serialized)
@@ -1162,7 +1162,7 @@
- 130 + 132
}
@@ -1539,7 +1539,7 @@
- 1347 + 1349
    fn default() -> Self {
@@ -1552,7 +1552,7 @@
- 1347 + 1349
        Self::new()
@@ -1565,7 +1565,7 @@
- 1347 + 1349
    }
@@ -1630,7 +1630,7 @@
- 4386 + 4390
    pub const fn new() -> Self {
@@ -1643,7 +1643,7 @@
- 4386 + 4390
        Self {
@@ -1656,7 +1656,7 @@
- 4386 + 4390
            allocation_budget: usize::MAX,
@@ -1669,7 +1669,7 @@
- 4386 + 4390
            compatibility: Compatibility::const_default(),
@@ -1682,7 +1682,7 @@
- 4386 + 4390
        }
@@ -1695,7 +1695,7 @@
- 4386 + 4390
    }
@@ -1889,11 +1889,11 @@ 143
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 2
-
-
    pub const fn compatibility(mut self, compatibilty: Compatibility) -> Self {
+
+
    pub const fn compatibility(mut self, compatibilty: Compatibility) -> Self {
144
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 2
-
-
        self.compatibility = compatibilty;
+
+
        self.compatibility = compatibilty;
145
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 2
-
-
        self
+
+
        self
146
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 2
-
-
    }
+
+
    }
- 135 + 137
    pub fn deserialize<'de, T>(&self, serialized: &'de [u8]) -> Result<T>
@@ -1994,7 +1994,7 @@
- 135 + 137
    where
@@ -2007,7 +2007,7 @@
- 135 + 137
        T: Deserialize<'de>,
@@ -2020,7 +2020,7 @@
- 135 + 137
    {
@@ -2033,7 +2033,7 @@
- 135 + 137
        let mut deserializer = de::Deserializer::from_slice(serialized, self.allocation_budget)?;
@@ -2046,7 +2046,7 @@
- 134 + 136
        let t = T::deserialize(&mut deserializer)?;
@@ -2059,7 +2059,7 @@
- 123 + 125
        if deserializer.end_of_input() {
@@ -2072,7 +2072,7 @@
- 123 + 125
            Ok(t)
@@ -2124,7 +2124,7 @@
- 135 + 137
    }
@@ -2371,7 +2371,7 @@
- 1095 + 1097
    pub fn serialize<T: Serialize>(&self, value: &T) -> Result<Vec<u8>> {
@@ -2384,7 +2384,7 @@
- 1095 + 1097
        let mut output = Vec::new();
@@ -2397,7 +2397,7 @@
- 1095 + 1097
        self.serialize_into(value, &mut output)?;
@@ -2410,7 +2410,7 @@
- 1095 + 1097
        Ok(output)
@@ -2423,7 +2423,7 @@
- 1095 + 1097
    }
@@ -2488,7 +2488,7 @@
- 1154 + 1156
    pub fn serialize_into<T, W>(&self, value: &T, writer: W) -> Result<()>
@@ -2501,7 +2501,7 @@
- 1154 + 1156
    where
@@ -2514,7 +2514,7 @@
- 1154 + 1156
        T: Serialize,
@@ -2527,7 +2527,7 @@
- 1154 + 1156
        W: WriteBytesExt,
@@ -2540,7 +2540,7 @@
- 1154 + 1156
    {
@@ -2553,7 +2553,7 @@
- 1154 + 1156
        let mut serializer = ser::Serializer::new_with_compatibility(writer, self.compatibility)?;
@@ -2566,7 +2566,7 @@
- 1154 + 1156
        value.serialize(&mut serializer)
@@ -2579,7 +2579,7 @@
- 1154 + 1156
    }
@@ -2930,7 +2930,7 @@
- 4400 + 4404
    const fn const_default() -> Self {
@@ -2943,7 +2943,7 @@
- 4400 + 4404
        Self::Full
@@ -2956,7 +2956,7 @@
- 4400 + 4404
    }
@@ -3094,7 +3094,7 @@
-

Date: 2024-08-11 01:26

+

Date: 2024-08-11 13:30

diff --git a/coverage/pot/src/reader.rs.html b/coverage/pot/src/reader.rs.html index a20dbe3e..2f2b3876 100644 --- a/coverage/pot/src/reader.rs.html +++ b/coverage/pot/src/reader.rs.html @@ -1071,7 +1071,7 @@
- 169 + 171
    fn from(data: &'a [u8]) -> Self {
@@ -1084,7 +1084,7 @@
- 169 + 171
        Self { data }
@@ -1097,7 +1097,7 @@
- 169 + 171
    }
@@ -1253,7 +1253,7 @@
- 35190 + 35200
    fn buffered_read_bytes(
@@ -1266,7 +1266,7 @@
- 35190 + 35200
        &mut self,
@@ -1279,7 +1279,7 @@
- 35190 + 35200
        length: usize,
@@ -1292,7 +1292,7 @@
- 35190 + 35200
        _scratch: &mut Vec<u8>,
@@ -1305,7 +1305,7 @@
- 35190 + 35200
    ) -> Result<BufferedBytes<'de>, Error> {
@@ -1318,7 +1318,7 @@
- 35190 + 35200
        if length > self.data.len() {
@@ -1370,7 +1370,7 @@
- 35189 + 35199
            let (start, remaining) = self.data.split_at(length);
@@ -1383,7 +1383,7 @@
- 35189 + 35199
            self.data = remaining;
@@ -1396,7 +1396,7 @@
- 35189 + 35199
            Ok(BufferedBytes::Data(start))
@@ -1422,7 +1422,7 @@
- 35190 + 35200
    }
@@ -1487,7 +1487,7 @@
- 223005 + 222865
    fn read(&mut self, buf: &mut [u8]) -> std::io::Result<usize> {
@@ -1500,7 +1500,7 @@
- 223005 + 222865
        let remaining_length = self.data.len();
@@ -1513,7 +1513,7 @@
- 223005 + 222865
        let (to_copy, remaining) = self.data.split_at(remaining_length.min(buf.len()));
@@ -1526,7 +1526,7 @@
- 223005 + 222865
        buf[..to_copy.len()].copy_from_slice(to_copy);
@@ -1539,7 +1539,7 @@
- 223005 + 222865
        self.data = remaining;
@@ -1552,7 +1552,7 @@
- 223005 + 222865
        Ok(to_copy.len())
@@ -1565,7 +1565,7 @@
- 223005 + 222865
    }
@@ -1604,7 +1604,7 @@
- 223005 + 222865
    fn read_exact(&mut self, buf: &mut [u8]) -> std::io::Result<()> {
@@ -1617,7 +1617,7 @@
- 889536 + 888928
        self.read(buf).map(|_| ())
@@ -1630,7 +1630,7 @@
- 223005 + 222865
    }
@@ -2470,7 +2470,7 @@
-

Date: 2024-08-11 01:26

+

Date: 2024-08-11 13:30

diff --git a/coverage/pot/src/ser.rs.html b/coverage/pot/src/ser.rs.html index 11f6e1d0..4ef7299a 100644 --- a/coverage/pot/src/ser.rs.html +++ b/coverage/pot/src/ser.rs.html @@ -15,7 +15,7 @@

Lines

- 78.41 %

+ 78.58 %

@@ -23,7 +23,7 @@

Functions

- 60.05 %

+ 60.15 %

@@ -369,7 +369,7 @@
- 613 + 626
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
@@ -382,7 +382,7 @@
- 613 + 626
        f.debug_struct("Serializer")
@@ -395,7 +395,7 @@
- 613 + 626
            .field("symbol_map", &self.symbol_map)
@@ -408,7 +408,7 @@
- 613 + 626
            .field("bytes_written", &self.bytes_written)
@@ -421,7 +421,7 @@
- 613 + 626
            .finish()
@@ -434,7 +434,7 @@
- 613 + 626
    }
@@ -590,7 +590,7 @@
- 1155 + 1157
    pub fn new_with_compatibility(output: W, compatibility: Compatibility) -> Result<Self> {
@@ -603,7 +603,7 @@
- 1155 + 1157
        Self::new_with_symbol_map(
@@ -616,7 +616,7 @@
- 1155 + 1157
            output,
@@ -629,7 +629,7 @@
- 1155 + 1157
            SymbolMapRef::Ephemeral(EphemeralSymbolMap::default()),
@@ -642,7 +642,7 @@
- 1155 + 1157
            compatibility,
@@ -655,7 +655,7 @@
- 1155 + 1157
        )
@@ -668,7 +668,7 @@
- 1155 + 1157
    }
@@ -694,7 +694,7 @@
- 1165 + 1167
    fn new_with_symbol_map(
@@ -707,7 +707,7 @@
- 1165 + 1167
        mut output: W,
@@ -720,7 +720,7 @@
- 1165 + 1167
        symbol_map: SymbolMapRef<'a>,
@@ -733,7 +733,7 @@
- 1165 + 1167
        compatibility: Compatibility,
@@ -746,7 +746,7 @@
- 1165 + 1167
    ) -> Result<Self> {
@@ -759,7 +759,7 @@
- 1165 + 1167
        let bytes_written = format::write_header(
@@ -772,7 +772,7 @@
- 1165 + 1167
            &mut output,
@@ -785,7 +785,7 @@
- 1165 + 1167
            match compatibility {
@@ -798,7 +798,7 @@
- 1165 + 1166
                Compatibility::Full => INITIAL_VERSION,
@@ -810,11 +810,11 @@ 60
- + class="column is-1 is-narrow p-0 has-text-centered has-text-success-light has-background-success"> + 1
-
-
                Compatibility::V4 => V4_VERSION,
+
+
                Compatibility::V4 => V4_VERSION,
- 1165 + 1167
        Ok(Self {
@@ -863,7 +863,7 @@
- 1165 + 1167
            compatibility,
@@ -876,7 +876,7 @@
- 1165 + 1167
            symbol_map,
@@ -889,7 +889,7 @@
- 1165 + 1167
            output,
@@ -902,7 +902,7 @@
- 1165 + 1167
            bytes_written,
@@ -915,7 +915,7 @@
- 1165 + 1167
        })
@@ -928,7 +928,7 @@
- 1165 + 1167
    }
@@ -954,7 +954,7 @@
- 1121235 + 1121239
    #[cfg_attr(feature = "tracing", instrument)]
@@ -2254,7 +2254,7 @@
- 140044 + 140046
    #[cfg_attr(feature = "tracing", instrument)]
@@ -2709,7 +2709,7 @@
- 490329 + 490072
    #[cfg_attr(feature = "tracing", instrument)]
@@ -2891,7 +2891,7 @@
- 69708 + 69965
    #[cfg_attr(feature = "tracing", instrument)]
@@ -2982,7 +2982,7 @@
- 70307 + 70050
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(value)))]
@@ -3268,7 +3268,7 @@
- 140007 + 140009
    #[cfg_attr(feature = "tracing", instrument)]
@@ -3580,7 +3580,7 @@
- 2 + 4
    #[cfg_attr(feature = "tracing", instrument(level = "trace", skip(value)))]
@@ -3814,7 +3814,7 @@
- 1020 + 1022
    #[cfg_attr(feature = "tracing", instrument)]
@@ -4906,7 +4906,7 @@
- 140025 + 140029
    fn serialize_element<T>(&mut self, value: &T) -> Result<()>
@@ -4919,7 +4919,7 @@
- 140025 + 140029
    where
@@ -4932,7 +4932,7 @@
- 140025 + 140029
        T: ?Sized + Serialize,
@@ -4945,7 +4945,7 @@
- 140025 + 140029
    {
@@ -4958,7 +4958,7 @@
- 140025 + 140029
        value.serialize(&mut **self)
@@ -4971,7 +4971,7 @@
- 140025 + 140029
    }
@@ -5010,7 +5010,7 @@
- 1014 + 1016
    fn end(self) -> Result<()> {
@@ -5023,7 +5023,7 @@
- 1014 + 1016
        Ok(())
@@ -5036,7 +5036,7 @@
- 1014 + 1016
    }
@@ -7012,7 +7012,7 @@
- 4484211 + 4484215
    fn find_or_add(&mut self, symbol: &'static str) -> RegisteredSymbol {
@@ -7025,7 +7025,7 @@
- 4484211 + 4484215
        // Symbols have to be static strings, and so we can rely on the addres
@@ -7038,7 +7038,7 @@
- 4484211 + 4484215
        // not changing. To avoid string comparisons, we're going to use the
@@ -7051,7 +7051,7 @@
- 4484211 + 4484215
        // address of the str in the map.
@@ -7064,7 +7064,7 @@
- 4484211 + 4484215
        let symbol_address = symbol.as_ptr() as usize;
@@ -7077,7 +7077,7 @@
- 4484211 + 4484215
        // Perform a binary search to find this existing element.
@@ -7090,7 +7090,7 @@
- 4484211 + 4484215
        match self
@@ -7103,7 +7103,7 @@
- 4484211 + 4484215
            .symbols
@@ -7116,7 +7116,7 @@
- 14059474 + 14060576
            .binary_search_by(|check| (check.0.as_ptr() as usize).cmp(&symbol_address))
@@ -7194,7 +7194,7 @@
- 52377 + 52381
            Err(position) => {
@@ -7207,7 +7207,7 @@
- 52377 + 52381
                let id = self.symbols.len() as u32;
@@ -7220,7 +7220,7 @@
- 52377 + 52381
                self.symbols.insert(position, (symbol, id));
@@ -7233,7 +7233,7 @@
- 52377 + 52381
                RegisteredSymbol { id, new: true }
@@ -7272,7 +7272,7 @@
- 4484211 + 4484215
    }
@@ -7324,7 +7324,7 @@
- 484 + 497
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
@@ -7337,7 +7337,7 @@
- 484 + 497
        let mut set = f.debug_set();
@@ -7350,7 +7350,7 @@
- 7858 + 7866
        for index in SymbolIdSorter::new(&self.symbols, |sym| sym.1) {
@@ -7363,7 +7363,7 @@
- 1976 + 1984
            set.entry(&self.symbols[index].0);
@@ -7376,7 +7376,7 @@
- 1976 + 1984
        }
@@ -7389,7 +7389,7 @@
- 484 + 497
        set.finish()
@@ -7402,7 +7402,7 @@
- 484 + 497
    }
@@ -10353,7 +10353,7 @@
- 4484337 + 4484341
    fn find_or_add(&mut self, symbol: &'static str) -> RegisteredSymbol {
@@ -10366,7 +10366,7 @@
- 4484337 + 4484341
        match self {
@@ -10379,7 +10379,7 @@
- 4484207 + 4484211
            SymbolMapRef::Ephemeral(map) => map.find_or_add(symbol),
@@ -10418,7 +10418,7 @@
- 4484337 + 4484341
    }
@@ -15631,7 +15631,7 @@
- 486 + 499
    pub fn new(source: &'a [T], map: F) -> Self {
@@ -15644,7 +15644,7 @@
- 486 + 499
        Self {
@@ -15657,7 +15657,7 @@
- 486 + 499
            source,
@@ -15670,7 +15670,7 @@
- 486 + 499
            map,
@@ -15683,7 +15683,7 @@
- 486 + 499
            min: 0,
@@ -15696,7 +15696,7 @@
- 486 + 499
            id: 0,
@@ -15709,7 +15709,7 @@
- 486 + 499
        }
@@ -15722,7 +15722,7 @@
- 486 + 499
    }
@@ -15839,7 +15839,7 @@
- 2466 + 2487
    fn next(&mut self) -> Option<Self::Item> {
@@ -15852,7 +15852,7 @@
- 2466 + 2487
        let mut encountered_greater = false;
@@ -15865,7 +15865,7 @@
- 2466 + 2487
        let start_min = self.min;
@@ -15878,7 +15878,7 @@
- 7863 + 7871
        for (relative_index, entry) in self.source[start_min..].iter().enumerate() {
@@ -15891,7 +15891,7 @@
- 7862 + 7870
            let id = (self.map)(entry);
@@ -15904,7 +15904,7 @@
- 7862 + 7870
            match id.cmp(&self.id) {
@@ -15930,7 +15930,7 @@
- 1980 + 1988
                    self.id += 1;
@@ -15943,7 +15943,7 @@
- 1980 + 1988
                    let index = start_min + relative_index;
@@ -15956,7 +15956,7 @@
- 1980 + 1988
                    if !encountered_greater {
@@ -15969,7 +15969,7 @@
- 887 + 895
                        self.min = index + 1;
@@ -15995,7 +15995,7 @@
- 1980 + 1988
                    return Some(index);
@@ -16099,7 +16099,7 @@
- 486 + 499
        None
@@ -16112,7 +16112,7 @@
- 2466 + 2487
    }
@@ -16406,7 +16406,7 @@
-

Date: 2024-08-11 01:26

+

Date: 2024-08-11 13:30

diff --git a/coverage/pot/src/tests.rs.html b/coverage/pot/src/tests.rs.html index c479d707..cffe4589 100644 --- a/coverage/pot/src/tests.rs.html +++ b/coverage/pot/src/tests.rs.html @@ -15,7 +15,7 @@

Lines

- 100 %

+ 99.68 %

@@ -23,7 +23,7 @@

Functions

- 64.68 %

+ 64.84 %

@@ -9994,10 +9994,478 @@
}
+
+
+ 767 +
+
+ +
+
+

+            
+
+
+ 768 +
+
+ +
+
+
#[test]
+
+
+
+ 769 +
+
+ 1 +
+
+
fn unit_enum_fix() {
+
+
+
+ 770 +
+
+ 1 +
+
+
    let test_payload = vec![EnumVariants::Unit, EnumVariants::Tuple(0)];
+
+
+
+ 771 +
+
+ 1 +
+
+
    let ambiguous = Config::new()
+
+
+
+ 772 +
+
+ 1 +
+
+
        .compatibility(Compatibility::Full)
+
+
+
+ 773 +
+
+ 1 +
+
+
        .serialize(&test_payload)
+
+
+
+ 774 +
+
+ 1 +
+
+
        .unwrap();
+
+
+
+ 775 +
+
+ 1 +
+
+
    let fixed = Config::new()
+
+
+
+ 776 +
+
+ 1 +
+
+
        .compatibility(Compatibility::V4)
+
+
+
+ 777 +
+
+ 1 +
+
+
        .serialize(&test_payload)
+
+
+
+ 778 +
+
+ 1 +
+
+
        .unwrap();
+
+
+
+ 779 +
+
+ 1 +
+
+
    assert_ne!(ambiguous, fixed);
+
+
+
+ 780 +
+
+ +
+
+

+            
+
+
+ 781 +
+
+ 1 +
+
+
    let bad_value: Value<'_> = crate::from_slice(&ambiguous).unwrap();
+
+
+
+ 782 +
+
+ 1 +
+
+
    let good_value: Value<'_> = crate::from_slice(&fixed).unwrap();
+
+
+
+ 783 +
+
+ 1 +
+
+
    match bad_value {
+
+
+
+ 784 +
+
+ 1 +
+
+
        Value::Sequence(sequence) => {
+
+
+
+ 785 +
+
+ 1 +
+
+
            assert_eq!(sequence[1], Value::None);
+
+
+
+ 786 +
+
+ +
+
+
        }
+
+
+
+ 787 +
+
+ +
+
+
        other => unreachable!("Unexpected value: {other:?}"),
+
+
+
+ 788 +
+
+ +
+
+
    }
+
+
+
+ 789 +
+
+ 1 +
+
+
    match good_value {
+
+
+
+ 790 +
+
+ 1 +
+
+
        Value::Sequence(sequence) => {
+
+
+
+ 791 +
+
+ 1 +
+
+
            assert_eq!(sequence.len(), 2);
+
+
+
+ 792 +
+
+ 1 +
+
+
            assert_eq!(
+
+
+
+ 793 +
+
+ 1 +
+
+
                sequence[1],
+
+
+
+ 794 +
+
+ 1 +
+
+
                Value::Mappings(vec![(
+
+
+
+ 795 +
+
+ 1 +
+
+
                    Value::String(Cow::Borrowed("Tuple")),
+
+
+
+ 796 +
+
+ 1 +
+
+
                    Value::from(0_u8)
+
+
+
+ 797 +
+
+ 1 +
+
+
                )])
+
+
+
+ 798 +
+
+ 1 +
+
+
            );
+
+
+
+ 799 +
+
+ +
+
+
        }
+
+
+
+ 800 +
+
+ +
+
+
        other => unreachable!("Unexpected value: {other:?}"),
+
+
+
+ 801 +
+
+ +
+
+
    }
+
+
+
+ 802 +
+
+ 1 +
+
+
}
+
-

Date: 2024-08-11 01:26

+

Date: 2024-08-11 13:30

diff --git a/coverage/pot/src/value.rs.html b/coverage/pot/src/value.rs.html index 00c17cf4..98895643 100644 --- a/coverage/pot/src/value.rs.html +++ b/coverage/pot/src/value.rs.html @@ -4555,7 +4555,7 @@
- 80 + 84
    fn eq(&self, other: &Value<'b>) -> bool {
@@ -4568,7 +4568,7 @@
- 80 + 84
        match (self, other) {
@@ -4594,7 +4594,7 @@
- 28 + 29
            (Self::Integer(l0), Value::Integer(r0)) => l0 == r0,
@@ -4633,7 +4633,7 @@
- 5 + 6
            (Self::String(l0), Value::String(r0)) => l0 == r0,
@@ -4685,7 +4685,7 @@
- 5 + 6
            (Self::Mappings(l0), Value::Mappings(r0)) => l0 == r0,
@@ -4698,7 +4698,7 @@
- 13 + 14
            _ => core::mem::discriminant(self) == core::mem::discriminant(other),
@@ -4724,7 +4724,7 @@
- 80 + 84
    }
@@ -5985,7 +5985,7 @@
- 29 + 41
    fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
@@ -5998,7 +5998,7 @@
- 29 + 41
    where
@@ -6011,7 +6011,7 @@
- 29 + 41
        D: serde::Deserializer<'de>,
@@ -6024,7 +6024,7 @@
- 29 + 41
    {
@@ -6037,7 +6037,7 @@
- 29 + 41
        deserializer.deserialize_any(ValueVisitor::default())
@@ -6050,7 +6050,7 @@
- 29 + 41
    }
@@ -7051,7 +7051,7 @@
- 3 + 4
    fn visit_none<E>(self) -> Result<Self::Value, E>
@@ -7064,7 +7064,7 @@
- 3 + 4
    where
@@ -7077,7 +7077,7 @@
- 3 + 4
        E: serde::de::Error,
@@ -7090,7 +7090,7 @@
- 3 + 4
    {
@@ -7103,7 +7103,7 @@
- 3 + 4
        Ok(Value::None)
@@ -7116,7 +7116,7 @@
- 3 + 4
    }
@@ -7779,7 +7779,7 @@
- 2 + 4
    fn visit_u8<E>(self, v: u8) -> Result<Self::Value, E>
@@ -7792,7 +7792,7 @@
- 2 + 4
    where
@@ -7805,7 +7805,7 @@
- 2 + 4
        E: serde::de::Error,
@@ -7818,7 +7818,7 @@
- 2 + 4
    {
@@ -7831,7 +7831,7 @@
- 2 + 4
        Ok(Value::Integer(Integer::from(v)))
@@ -7844,7 +7844,7 @@
- 2 + 4
    }
@@ -8611,7 +8611,7 @@
- 5 + 9
    fn visit_borrowed_str<E>(self, v: &'a str) -> Result<Self::Value, E>
@@ -8624,7 +8624,7 @@
- 5 + 9
    where
@@ -8637,7 +8637,7 @@
- 5 + 9
        E: serde::de::Error,
@@ -8650,7 +8650,7 @@
- 5 + 9
    {
@@ -8663,7 +8663,7 @@
- 5 + 9
        Ok(Value::String(Cow::Borrowed(v)))
@@ -8676,7 +8676,7 @@
- 5 + 9
    }
@@ -9339,7 +9339,7 @@
- 1 + 3
    fn visit_seq<A>(self, mut seq: A) -> Result<Self::Value, A::Error>
@@ -9352,7 +9352,7 @@
- 1 + 3
    where
@@ -9365,7 +9365,7 @@
- 1 + 3
        A: serde::de::SeqAccess<'de>,
@@ -9378,7 +9378,7 @@
- 1 + 3
    {
@@ -9391,7 +9391,7 @@
- 1 + 3
        let mut values = if let Some(hint) = seq.size_hint() {
@@ -9404,7 +9404,7 @@
- 1 + 3
            Vec::with_capacity(hint)
@@ -9456,7 +9456,7 @@
- 2 + 8
        while let Some(value) = seq.next_element()? {
@@ -9469,7 +9469,7 @@
- 1 + 5
            values.push(value);
@@ -9482,7 +9482,7 @@
- 1 + 5
        }
@@ -9495,7 +9495,7 @@
- 1 + 3
        Ok(Value::Sequence(values))
@@ -9508,7 +9508,7 @@
- 1 + 3
    }
@@ -9547,7 +9547,7 @@
- 2 + 5
    fn visit_map<A>(self, mut map: A) -> Result<Self::Value, A::Error>
@@ -9560,7 +9560,7 @@
- 2 + 5
    where
@@ -9573,7 +9573,7 @@
- 2 + 5
        A: serde::de::MapAccess<'de>,
@@ -9586,7 +9586,7 @@
- 2 + 5
    {
@@ -9599,7 +9599,7 @@
- 2 + 5
        let mut values = if let Some(hint) = map.size_hint() {
@@ -9612,7 +9612,7 @@
- 2 + 5
            Vec::with_capacity(hint)
@@ -9664,7 +9664,7 @@
- 5 + 11
        while let Some(value) = map.next_entry()? {
@@ -9677,7 +9677,7 @@
- 3 + 6
            values.push(value);
@@ -9690,7 +9690,7 @@
- 3 + 6
        }
@@ -9703,7 +9703,7 @@
- 2 + 5
        Ok(Value::Mappings(values))
@@ -9716,7 +9716,7 @@
- 2 + 5
    }
@@ -10132,7 +10132,7 @@
- 64 + 65
            fn from(value: $primitive) -> Self {
@@ -10145,7 +10145,7 @@
- 64 + 65
                Self::$container($container::from(value))
@@ -10158,7 +10158,7 @@
- 64 + 65
            }
@@ -29731,7 +29731,7 @@