Coverage Report

Created: 2025-02-21 07:11

/rust/registry/src/index.crates.io-6f17d22bba15001f/async-graphql-value-7.0.15/src/extensions.rs
Line
Count
Source (jump to first uncovered line)
1
use std::{
2
    collections::HashMap,
3
    ops::{Deref, DerefMut},
4
};
5
6
use serde::{Deserialize, Deserializer, Serialize};
7
8
/// Extensions of a query.
9
#[derive(Debug, Clone, Default, Serialize, Eq, PartialEq)]
10
#[serde(transparent)]
11
pub struct Extensions(pub HashMap<String, crate::ConstValue>);
12
13
impl<'de> Deserialize<'de> for Extensions {
14
0
    fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error> {
15
0
        Ok(Self(
16
0
            <Option<HashMap<_, _>>>::deserialize(deserializer)?.unwrap_or_default(),
17
        ))
18
0
    }
Unexecuted instantiation: <async_graphql_value::extensions::Extensions as serde::de::Deserialize>::deserialize::<&mut serde_json::de::Deserializer<serde_json::read::StrRead>>
Unexecuted instantiation: <async_graphql_value::extensions::Extensions as serde::de::Deserialize>::deserialize::<_>
19
}
20
21
impl Deref for Extensions {
22
    type Target = HashMap<String, crate::ConstValue>;
23
24
0
    fn deref(&self) -> &Self::Target {
25
0
        &self.0
26
0
    }
27
}
28
29
impl DerefMut for Extensions {
30
0
    fn deref_mut(&mut self) -> &mut Self::Target {
31
0
        &mut self.0
32
0
    }
33
}