alkahest/
skip.rs

1use crate::{
2    deserialize::{Deserialize, DeserializeError, Deserializer},
3    formula::BareFormula,
4};
5
6/// No-op deserializer for any formula.
7#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
8pub struct Skip;
9
10impl<'de, F> Deserialize<'de, F> for Skip
11where
12    F: BareFormula + ?Sized,
13{
14    #[inline(always)]
15    fn deserialize(_de: Deserializer) -> Result<Self, DeserializeError> {
16        Ok(Skip)
17    }
18
19    #[inline(always)]
20    fn deserialize_in_place(&mut self, _de: Deserializer) -> Result<(), DeserializeError> {
21        Ok(())
22    }
23}