diff --git a/README.md b/README.md index 8037ec9f..fa58f111 100644 --- a/README.md +++ b/README.md @@ -198,18 +198,18 @@ struct PointMapVisitor<'a> { state: u8, } -impl<'a> serde::ser::MapVisitor for PointMapVisitor { - fn visit(&mut self, serializer: &mut S) -> Result +impl<'a> serde::ser::MapVisitor for PointMapVisitor<'a> { + fn visit(&mut self, serializer: &mut S) -> Result, S::Error> where S: serde::Serializer { match self.state { 0 => { self.state += 1; - Ok(Some(try!(serializer.visit_map_elt("x", &self.x))) + Ok(Some(try!(serializer.visit_map_elt("x", &self.value.x)))) } 1 => { self.state += 1; - Ok(Some(try!(serializer.visit_map_elt("y", &self.y)))) + Ok(Some(try!(serializer.visit_map_elt("y", &self.value.y)))) } _ => { Ok(None) @@ -233,7 +233,7 @@ can create the `i32` from a variety of different types: ```rust impl Deserialize for i32 { - fn deserialize(deserializer: &mut D) -> Result<$ty, D::Error> + fn deserialize(deserializer: &mut D) -> Result where D: serde::Deserializer, { deserializer.visit(I32Visitor)