diff --git a/serde/src/macros.rs b/serde/src/macros.rs index b453e7c1..12c488a9 100644 --- a/serde/src/macros.rs +++ b/serde/src/macros.rs @@ -192,13 +192,24 @@ macro_rules! forward_to_deserialize_helper { /// specified explicitly if necessary. /// /// ```rust -/// # #[macro_use] extern crate serde; +/// # #[macro_use] +/// # extern crate serde; +/// # +/// # use std::marker::PhantomData; +/// # /// # use serde::de::{value, Deserializer, Visitor}; -/// # pub struct MyDeserializer; -/// # impl<'q> Deserializer<'q> for MyDeserializer { -/// # type Error = value::Error; -/// # fn deserialize(self, visitor: V) -> Result -/// # where V: Visitor<'q> { unimplemented!() } +/// # +/// # struct MyDeserializer(PhantomData); +/// # +/// # impl<'q, V> Deserializer<'q> for MyDeserializer { +/// # type Error = value::Error; +/// # +/// # fn deserialize(self, visitor: W) -> Result +/// # where W: Visitor<'q> +/// # { +/// # unimplemented!() +/// # } +/// # /// forward_to_deserialize! { /// > /// bool u8 u16 u32 u64 i8 i16 i32 i64 f32 f64 char str string unit option @@ -206,6 +217,7 @@ macro_rules! forward_to_deserialize_helper { /// tuple_struct struct struct_field tuple enum ignored_any /// } /// # } +/// # /// # fn main() {} /// ``` #[macro_export]