serde_core/private/
doc.rs1use crate::lib::*;
4
5use crate::ser;
6
7#[doc(hidden)]
8#[derive(Debug)]
9pub struct Error;
10
11#[cfg_attr(not(no_diagnostic_namespace), diagnostic::do_not_recommend)]
12impl ser::Error for Error {
13 fn custom<T>(_: T) -> Self
14 where
15 T: Display,
16 {
17 unimplemented!()
18 }
19}
20
21#[cfg(feature = "std")]
22#[cfg_attr(not(no_diagnostic_namespace), diagnostic::do_not_recommend)]
23impl error::Error for Error {
24 fn description(&self) -> &str {
25 unimplemented!()
26 }
27}
28
29#[cfg_attr(not(no_diagnostic_namespace), diagnostic::do_not_recommend)]
30impl Display for Error {
31 fn fmt(&self, _: &mut fmt::Formatter) -> fmt::Result {
32 unimplemented!()
33 }
34}
35
36#[doc(hidden)]
37#[macro_export]
38macro_rules! __private_serialize {
39 () => {
40 trait Serialize {
41 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
42 where
43 S: $crate::Serializer;
44 }
45 };
46}
47
48#[doc(hidden)]
49#[macro_export(local_inner_macros)]
50macro_rules! __serialize_unimplemented {
51 ($($func:ident)*) => {
52 $(
53 __serialize_unimplemented_helper!($func);
54 )*
55 };
56}
57
58#[doc(hidden)]
59#[macro_export]
60macro_rules! __serialize_unimplemented_method {
61 ($func:ident $(<$t:ident>)* ($($arg:ty),*) -> $ret:ident) => {
62 fn $func $(<$t>)* (self $(, _: $arg)*) -> $crate::__private::Result<Self::$ret, Self::Error>
63 where
64 $($t: ?Sized + $crate::Serialize,)*
65 {
66 unimplemented!()
67 }
68 };
69}
70
71#[doc(hidden)]
72#[macro_export(local_inner_macros)]
73macro_rules! __serialize_unimplemented_helper {
74 (bool) => {
75 __serialize_unimplemented_method!(serialize_bool(bool) -> Ok);
76 };
77 (i8) => {
78 __serialize_unimplemented_method!(serialize_i8(i8) -> Ok);
79 };
80 (i16) => {
81 __serialize_unimplemented_method!(serialize_i16(i16) -> Ok);
82 };
83 (i32) => {
84 __serialize_unimplemented_method!(serialize_i32(i32) -> Ok);
85 };
86 (i64) => {
87 __serialize_unimplemented_method!(serialize_i64(i64) -> Ok);
88 };
89 (u8) => {
90 __serialize_unimplemented_method!(serialize_u8(u8) -> Ok);
91 };
92 (u16) => {
93 __serialize_unimplemented_method!(serialize_u16(u16) -> Ok);
94 };
95 (u32) => {
96 __serialize_unimplemented_method!(serialize_u32(u32) -> Ok);
97 };
98 (u64) => {
99 __serialize_unimplemented_method!(serialize_u64(u64) -> Ok);
100 };
101 (f32) => {
102 __serialize_unimplemented_method!(serialize_f32(f32) -> Ok);
103 };
104 (f64) => {
105 __serialize_unimplemented_method!(serialize_f64(f64) -> Ok);
106 };
107 (char) => {
108 __serialize_unimplemented_method!(serialize_char(char) -> Ok);
109 };
110 (str) => {
111 __serialize_unimplemented_method!(serialize_str(&str) -> Ok);
112 };
113 (bytes) => {
114 __serialize_unimplemented_method!(serialize_bytes(&[u8]) -> Ok);
115 };
116 (none) => {
117 __serialize_unimplemented_method!(serialize_none() -> Ok);
118 };
119 (some) => {
120 __serialize_unimplemented_method!(serialize_some<T>(&T) -> Ok);
121 };
122 (unit) => {
123 __serialize_unimplemented_method!(serialize_unit() -> Ok);
124 };
125 (unit_struct) => {
126 __serialize_unimplemented_method!(serialize_unit_struct(&str) -> Ok);
127 };
128 (unit_variant) => {
129 __serialize_unimplemented_method!(serialize_unit_variant(&str, u32, &str) -> Ok);
130 };
131 (newtype_struct) => {
132 __serialize_unimplemented_method!(serialize_newtype_struct<T>(&str, &T) -> Ok);
133 };
134 (newtype_variant) => {
135 __serialize_unimplemented_method!(serialize_newtype_variant<T>(&str, u32, &str, &T) -> Ok);
136 };
137 (seq) => {
138 type SerializeSeq = $crate::ser::Impossible<Self::Ok, Self::Error>;
139 __serialize_unimplemented_method!(serialize_seq(Option<usize>) -> SerializeSeq);
140 };
141 (tuple) => {
142 type SerializeTuple = $crate::ser::Impossible<Self::Ok, Self::Error>;
143 __serialize_unimplemented_method!(serialize_tuple(usize) -> SerializeTuple);
144 };
145 (tuple_struct) => {
146 type SerializeTupleStruct = $crate::ser::Impossible<Self::Ok, Self::Error>;
147 __serialize_unimplemented_method!(serialize_tuple_struct(&str, usize) -> SerializeTupleStruct);
148 };
149 (tuple_variant) => {
150 type SerializeTupleVariant = $crate::ser::Impossible<Self::Ok, Self::Error>;
151 __serialize_unimplemented_method!(serialize_tuple_variant(&str, u32, &str, usize) -> SerializeTupleVariant);
152 };
153 (map) => {
154 type SerializeMap = $crate::ser::Impossible<Self::Ok, Self::Error>;
155 __serialize_unimplemented_method!(serialize_map(Option<usize>) -> SerializeMap);
156 };
157 (struct) => {
158 type SerializeStruct = $crate::ser::Impossible<Self::Ok, Self::Error>;
159 __serialize_unimplemented_method!(serialize_struct(&str, usize) -> SerializeStruct);
160 };
161 (struct_variant) => {
162 type SerializeStructVariant = $crate::ser::Impossible<Self::Ok, Self::Error>;
163 __serialize_unimplemented_method!(serialize_struct_variant(&str, u32, &str, usize) -> SerializeStructVariant);
164 };
165}