mirror of
https://github.com/serde-rs/serde.git
synced 2025-10-02 07:21:12 +00:00
Sort macros in a more readable order
This commit is contained in:
parent
942642c0f4
commit
c5bd760133
@ -1,111 +1,3 @@
|
|||||||
#[doc(hidden)]
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! forward_to_deserialize_method {
|
|
||||||
($func:ident<$l:tt, $v:ident>($($arg:ident : $ty:ty),*)) => {
|
|
||||||
#[inline]
|
|
||||||
fn $func<$v>(self, $($arg: $ty,)* visitor: $v) -> $crate::export::Result<$v::Value, Self::Error>
|
|
||||||
where $v: $crate::de::Visitor<$l>
|
|
||||||
{
|
|
||||||
$(
|
|
||||||
let _ = $arg;
|
|
||||||
)*
|
|
||||||
self.deserialize(visitor)
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
#[doc(hidden)]
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! forward_to_deserialize_helper {
|
|
||||||
(bool<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_bool<$l, $v>()}
|
|
||||||
};
|
|
||||||
(u8<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_u8<$l, $v>()}
|
|
||||||
};
|
|
||||||
(u16<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_u16<$l, $v>()}
|
|
||||||
};
|
|
||||||
(u32<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_u32<$l, $v>()}
|
|
||||||
};
|
|
||||||
(u64<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_u64<$l, $v>()}
|
|
||||||
};
|
|
||||||
(i8<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_i8<$l, $v>()}
|
|
||||||
};
|
|
||||||
(i16<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_i16<$l, $v>()}
|
|
||||||
};
|
|
||||||
(i32<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_i32<$l, $v>()}
|
|
||||||
};
|
|
||||||
(i64<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_i64<$l, $v>()}
|
|
||||||
};
|
|
||||||
(f32<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_f32<$l, $v>()}
|
|
||||||
};
|
|
||||||
(f64<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_f64<$l, $v>()}
|
|
||||||
};
|
|
||||||
(char<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_char<$l, $v>()}
|
|
||||||
};
|
|
||||||
(str<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_str<$l, $v>()}
|
|
||||||
};
|
|
||||||
(string<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_string<$l, $v>()}
|
|
||||||
};
|
|
||||||
(unit<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_unit<$l, $v>()}
|
|
||||||
};
|
|
||||||
(option<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_option<$l, $v>()}
|
|
||||||
};
|
|
||||||
(seq<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_seq<$l, $v>()}
|
|
||||||
};
|
|
||||||
(seq_fixed_size<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_seq_fixed_size<$l, $v>(len: usize)}
|
|
||||||
};
|
|
||||||
(bytes<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_bytes<$l, $v>()}
|
|
||||||
};
|
|
||||||
(byte_buf<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_byte_buf<$l, $v>()}
|
|
||||||
};
|
|
||||||
(map<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_map<$l, $v>()}
|
|
||||||
};
|
|
||||||
(unit_struct<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_unit_struct<$l, $v>(name: &'static str)}
|
|
||||||
};
|
|
||||||
(newtype_struct<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_newtype_struct<$l, $v>(name: &'static str)}
|
|
||||||
};
|
|
||||||
(tuple_struct<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_tuple_struct<$l, $v>(name: &'static str, len: usize)}
|
|
||||||
};
|
|
||||||
(struct<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_struct<$l, $v>(name: &'static str, fields: &'static [&'static str])}
|
|
||||||
};
|
|
||||||
(identifier<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_identifier<$l, $v>()}
|
|
||||||
};
|
|
||||||
(tuple<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_tuple<$l, $v>(len: usize)}
|
|
||||||
};
|
|
||||||
(enum<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_enum<$l, $v>(name: &'static str, variants: &'static [&'static str])}
|
|
||||||
};
|
|
||||||
(ignored_any<$l:tt, $v:ident>) => {
|
|
||||||
forward_to_deserialize_method!{deserialize_ignored_any<$l, $v>()}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
// Super explicit first paragraph because this shows up at the top level and
|
// Super explicit first paragraph because this shows up at the top level and
|
||||||
// trips up people who are just looking for basic Serialize / Deserialize
|
// trips up people who are just looking for basic Serialize / Deserialize
|
||||||
// documentation.
|
// documentation.
|
||||||
@ -229,7 +121,116 @@ macro_rules! forward_to_deserialize {
|
|||||||
(<$visitor:ident: Visitor<$lifetime:tt>> $($func:ident)*) => {
|
(<$visitor:ident: Visitor<$lifetime:tt>> $($func:ident)*) => {
|
||||||
$(forward_to_deserialize_helper!{$func<$lifetime, $visitor>})*
|
$(forward_to_deserialize_helper!{$func<$lifetime, $visitor>})*
|
||||||
};
|
};
|
||||||
|
// This case must be after the previous one.
|
||||||
($($func:ident)*) => {
|
($($func:ident)*) => {
|
||||||
$(forward_to_deserialize_helper!{$func<'de, V>})*
|
$(forward_to_deserialize_helper!{$func<'de, V>})*
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[doc(hidden)]
|
||||||
|
#[macro_export]
|
||||||
|
macro_rules! forward_to_deserialize_method {
|
||||||
|
($func:ident<$l:tt, $v:ident>($($arg:ident : $ty:ty),*)) => {
|
||||||
|
#[inline]
|
||||||
|
fn $func<$v>(self, $($arg: $ty,)* visitor: $v) -> $crate::export::Result<$v::Value, Self::Error>
|
||||||
|
where $v: $crate::de::Visitor<$l>
|
||||||
|
{
|
||||||
|
$(
|
||||||
|
let _ = $arg;
|
||||||
|
)*
|
||||||
|
self.deserialize(visitor)
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#[doc(hidden)]
|
||||||
|
#[macro_export]
|
||||||
|
macro_rules! forward_to_deserialize_helper {
|
||||||
|
(bool<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_bool<$l, $v>()}
|
||||||
|
};
|
||||||
|
(u8<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_u8<$l, $v>()}
|
||||||
|
};
|
||||||
|
(u16<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_u16<$l, $v>()}
|
||||||
|
};
|
||||||
|
(u32<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_u32<$l, $v>()}
|
||||||
|
};
|
||||||
|
(u64<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_u64<$l, $v>()}
|
||||||
|
};
|
||||||
|
(i8<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_i8<$l, $v>()}
|
||||||
|
};
|
||||||
|
(i16<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_i16<$l, $v>()}
|
||||||
|
};
|
||||||
|
(i32<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_i32<$l, $v>()}
|
||||||
|
};
|
||||||
|
(i64<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_i64<$l, $v>()}
|
||||||
|
};
|
||||||
|
(f32<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_f32<$l, $v>()}
|
||||||
|
};
|
||||||
|
(f64<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_f64<$l, $v>()}
|
||||||
|
};
|
||||||
|
(char<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_char<$l, $v>()}
|
||||||
|
};
|
||||||
|
(str<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_str<$l, $v>()}
|
||||||
|
};
|
||||||
|
(string<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_string<$l, $v>()}
|
||||||
|
};
|
||||||
|
(unit<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_unit<$l, $v>()}
|
||||||
|
};
|
||||||
|
(option<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_option<$l, $v>()}
|
||||||
|
};
|
||||||
|
(seq<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_seq<$l, $v>()}
|
||||||
|
};
|
||||||
|
(seq_fixed_size<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_seq_fixed_size<$l, $v>(len: usize)}
|
||||||
|
};
|
||||||
|
(bytes<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_bytes<$l, $v>()}
|
||||||
|
};
|
||||||
|
(byte_buf<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_byte_buf<$l, $v>()}
|
||||||
|
};
|
||||||
|
(map<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_map<$l, $v>()}
|
||||||
|
};
|
||||||
|
(unit_struct<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_unit_struct<$l, $v>(name: &'static str)}
|
||||||
|
};
|
||||||
|
(newtype_struct<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_newtype_struct<$l, $v>(name: &'static str)}
|
||||||
|
};
|
||||||
|
(tuple_struct<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_tuple_struct<$l, $v>(name: &'static str, len: usize)}
|
||||||
|
};
|
||||||
|
(struct<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_struct<$l, $v>(name: &'static str, fields: &'static [&'static str])}
|
||||||
|
};
|
||||||
|
(identifier<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_identifier<$l, $v>()}
|
||||||
|
};
|
||||||
|
(tuple<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_tuple<$l, $v>(len: usize)}
|
||||||
|
};
|
||||||
|
(enum<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_enum<$l, $v>(name: &'static str, variants: &'static [&'static str])}
|
||||||
|
};
|
||||||
|
(ignored_any<$l:tt, $v:ident>) => {
|
||||||
|
forward_to_deserialize_method!{deserialize_ignored_any<$l, $v>()}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
@ -1,3 +1,14 @@
|
|||||||
|
/// Used only by Serde doc tests. Not public API.
|
||||||
|
#[doc(hidden)]
|
||||||
|
#[macro_export]
|
||||||
|
macro_rules! __serialize_unimplemented {
|
||||||
|
($($func:ident)*) => {
|
||||||
|
$(
|
||||||
|
__serialize_unimplemented_helper!($func);
|
||||||
|
)*
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
#[doc(hidden)]
|
#[doc(hidden)]
|
||||||
#[macro_export]
|
#[macro_export]
|
||||||
macro_rules! __serialize_unimplemented_method {
|
macro_rules! __serialize_unimplemented_method {
|
||||||
@ -106,14 +117,3 @@ macro_rules! __serialize_unimplemented_helper {
|
|||||||
__serialize_unimplemented_method!(serialize_struct_variant(&str, u32, &str, usize) -> SerializeStructVariant);
|
__serialize_unimplemented_method!(serialize_struct_variant(&str, u32, &str, usize) -> SerializeStructVariant);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Used only by Serde doc tests. Not public API.
|
|
||||||
#[doc(hidden)]
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! __serialize_unimplemented {
|
|
||||||
($($func:ident)*) => {
|
|
||||||
$(
|
|
||||||
__serialize_unimplemented_helper!($func);
|
|
||||||
)*
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
|
mod macros;
|
||||||
|
|
||||||
pub mod ser;
|
pub mod ser;
|
||||||
pub mod de;
|
pub mod de;
|
||||||
|
|
||||||
mod macros;
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user