Coverage Report

Created: 2025-02-21 07:11

/rust/registry/src/index.crates.io-6f17d22bba15001f/revision-0.11.0/src/implementations/reverse.rs
Line
Count
Source (jump to first uncovered line)
1
use super::super::Error;
2
use super::super::Revisioned;
3
use std::cmp::Reverse;
4
5
impl<T> Revisioned for Reverse<T>
6
where
7
  T: Revisioned,
8
{
9
  #[inline]
10
0
  fn serialize_revisioned<W: std::io::Write>(&self, writer: &mut W) -> Result<(), Error> {
11
0
    self.0.serialize_revisioned(writer)
12
0
  }
13
14
  #[inline]
15
0
  fn deserialize_revisioned<R: std::io::Read>(reader: &mut R) -> Result<Self, Error> {
16
0
    Ok(Reverse(T::deserialize_revisioned(reader)?))
17
0
  }
18
19
0
  fn revision() -> u16 {
20
0
    1
21
0
  }
22
}
23
24
#[cfg(test)]
25
mod tests {
26
27
  use super::Revisioned;
28
  use std::cmp::Reverse;
29
30
  #[test]
31
  fn test_reverse() {
32
    let val: Reverse<u32> = Reverse(u32::MAX);
33
    let mut mem: Vec<u8> = vec![];
34
    val.serialize_revisioned(&mut mem).unwrap();
35
    assert_eq!(mem.len(), 5);
36
    let out =
37
      <Reverse<u32> as Revisioned>::deserialize_revisioned(&mut mem.as_slice()).unwrap();
38
    assert_eq!(val, out);
39
  }
40
}