MCPcopy Create free account
hub / github.com/apache/datafusion / deserialize

Method deserialize

datafusion/proto/src/generated/pbjson.rs:29–111  ·  view source on GitHub ↗
(deserializer: D)

Source from the content-addressed store, hash-verified

27impl<'de> serde::Deserialize<'de> for AggLimit {
28 #[allow(deprecated)]
29 fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
30 where
31 D: serde::Deserializer<'de>,
32 {
33 const FIELDS: &[&str] = &[
34 "limit",
35 "descending",
36 ];
37
38 #[allow(clippy::enum_variant_names)]
39 enum GeneratedField {
40 Limit,
41 Descending,
42 }
43 impl<'de> serde::Deserialize<'de> for GeneratedField {
44 fn deserialize<D>(deserializer: D) -> std::result::Result<GeneratedField, D::Error>
45 where
46 D: serde::Deserializer<'de>,
47 {
48 struct GeneratedVisitor;
49
50 impl serde::de::Visitor<'_> for GeneratedVisitor {
51 type Value = GeneratedField;
52
53 fn expecting(&self, formatter: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
54 write!(formatter, "expected one of: {:?}", &FIELDS)
55 }
56
57 #[allow(unused_variables)]
58 fn visit_str<E>(self, value: &str) -> std::result::Result<GeneratedField, E>
59 where
60 E: serde::de::Error,
61 {
62 match value {
63 "limit" => Ok(GeneratedField::Limit),
64 "descending" => Ok(GeneratedField::Descending),
65 _ => Err(serde::de::Error::unknown_field(value, FIELDS)),
66 }
67 }
68 }
69 deserializer.deserialize_identifier(GeneratedVisitor)
70 }
71 }
72 struct GeneratedVisitor;
73 impl<'de> serde::de::Visitor<'de> for GeneratedVisitor {
74 type Value = AggLimit;
75
76 fn expecting(&self, formatter: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
77 formatter.write_str("struct datafusion.AggLimit")
78 }
79
80 fn visit_map<V>(self, mut map_: V) -> std::result::Result<AggLimit, V::Error>
81 where
82 V: serde::de::MapAccess<'de>,
83 {
84 let mut limit__ = None;
85 let mut descending__ = None;
86 while let Some(k) = map_.next_key()? {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected