From ae8021f79aecfb1730138298b7e2bfa61d96d1cd Mon Sep 17 00:00:00 2001 From: Marc-Antoine Arnaud Date: Mon, 8 Jun 2020 10:28:36 +0200 Subject: [PATCH] remove lifetime parameter on serializer --- yaserde/src/lib.rs | 4 ++-- yaserde/src/ser/mod.rs | 13 +++++-------- yaserde/tests/serializer.rs | 2 +- yaserde_derive/src/ser/implement_serializer.rs | 2 +- 4 files changed, 9 insertions(+), 12 deletions(-) diff --git a/yaserde/src/lib.rs b/yaserde/src/lib.rs index ef049d8..5e55a3f 100644 --- a/yaserde/src/lib.rs +++ b/yaserde/src/lib.rs @@ -23,7 +23,7 @@ pub trait YaDeserialize: Sized { } /// A **data structure** that can be serialized into any data format supported by YaSerDe. -pub trait YaSerialize<'a>: Sized { +pub trait YaSerialize: Sized { fn serialize(&self, writer: &mut ser::Serializer) -> Result<(), String>; fn serialize_attributes( @@ -95,7 +95,7 @@ pub trait Visitor<'de>: Sized { macro_rules! serialize_type { ($type:ty) => { - impl<'a> YaSerialize<'a> for $type { + impl YaSerialize for $type { fn serialize(&self, writer: &mut ser::Serializer) -> Result<(), String> { let content = format!("{}", self); let event = XmlEvent::characters(&content); diff --git a/yaserde/src/ser/mod.rs b/yaserde/src/ser/mod.rs index 1f9797d..4d57c87 100644 --- a/yaserde/src/ser/mod.rs +++ b/yaserde/src/ser/mod.rs @@ -7,24 +7,21 @@ use std::str; use xml::writer::XmlEvent; use xml::{EmitterConfig, EventWriter}; -pub fn to_string<'a, T: YaSerialize<'a>>(model: &T) -> Result { +pub fn to_string(model: &T) -> Result { let buf = Cursor::new(Vec::new()); let cursor = serialize_with_writer(model, buf, &Config::default())?; let data = str::from_utf8(cursor.get_ref()).expect("Found invalid UTF-8"); Ok(String::from(data)) } -pub fn to_string_with_config<'a, T: YaSerialize<'a>>( - model: &T, - config: &Config, -) -> Result { +pub fn to_string_with_config(model: &T, config: &Config) -> Result { let buf = Cursor::new(Vec::new()); let cursor = serialize_with_writer(model, buf, config)?; let data = str::from_utf8(cursor.get_ref()).expect("Found invalid UTF-8"); Ok(String::from(data)) } -pub fn serialize_with_writer<'a, W: Write, T: YaSerialize<'a>>( +pub fn serialize_with_writer( model: &T, writer: W, _config: &Config, @@ -36,14 +33,14 @@ pub fn serialize_with_writer<'a, W: Write, T: YaSerialize<'a>>( } } -pub fn to_string_content<'a, T: YaSerialize<'a>>(model: &T) -> Result { +pub fn to_string_content(model: &T) -> Result { let buf = Cursor::new(Vec::new()); let cursor = serialize_with_writer_content(model, buf)?; let data = str::from_utf8(cursor.get_ref()).expect("Found invalid UTF-8"); Ok(String::from(data)) } -pub fn serialize_with_writer_content<'a, W: Write, T: YaSerialize<'a>>( +pub fn serialize_with_writer_content( model: &T, writer: W, ) -> Result { diff --git a/yaserde/tests/serializer.rs b/yaserde/tests/serializer.rs index da4020d..7b8cf6f 100644 --- a/yaserde/tests/serializer.rs +++ b/yaserde/tests/serializer.rs @@ -293,7 +293,7 @@ fn ser_custom() { value: i32, } - impl<'a> YaSerialize<'a> for Day { + impl YaSerialize for Day { fn serialize(&self, writer: &mut yaserde::ser::Serializer) -> Result<(), String> { let _ret = writer.write(xml::writer::XmlEvent::start_element("DoubleDay")); let _ret = writer.write(xml::writer::XmlEvent::characters( diff --git a/yaserde_derive/src/ser/implement_serializer.rs b/yaserde_derive/src/ser/implement_serializer.rs index 3b7df82..4a5217e 100644 --- a/yaserde_derive/src/ser/implement_serializer.rs +++ b/yaserde_derive/src/ser/implement_serializer.rs @@ -16,7 +16,7 @@ pub fn implement_serializer( quote! { use xml::writer::XmlEvent; - impl<'a> YaSerialize<'a> for #name { + impl YaSerialize for #name { #[allow(unused_variables)] fn serialize(&self, writer: &mut yaserde::ser::Serializer) -> Result<(), String> {