From 6279b0d93025dd69183b56a0c69de87ffdafbaef Mon Sep 17 00:00:00 2001 From: David Tolnay Date: Mon, 17 Apr 2017 14:19:32 -0700 Subject: [PATCH] Resolve merge conflicts --- serde/Cargo.toml | 8 +-- serde/src/de/impls.rs | 127 ++++++++++------------------------------ serde/src/lib.rs | 3 + serde/src/ser/impls.rs | 47 ++++++--------- serde_derive/Cargo.toml | 8 +-- serde_test/Cargo.toml | 8 +-- 6 files changed, 54 insertions(+), 147 deletions(-) diff --git a/serde/Cargo.toml b/serde/Cargo.toml index 81b5dd60..c1b4709f 100644 --- a/serde/Cargo.toml +++ b/serde/Cargo.toml @@ -1,12 +1,6 @@ [package] name = "serde" -<<<<<<< HEAD -version = "0.9.13" # remember to update html_root_url -||||||| merged common ancestors -version = "0.9.13" -======= -version = "0.9.14" ->>>>>>> origin/master +version = "0.9.14" # remember to update html_root_url authors = ["Erick Tryzelaar "] license = "MIT/Apache-2.0" description = "A generic serialization/deserialization framework" diff --git a/serde/src/de/impls.rs b/serde/src/de/impls.rs index 4e8c7f0f..b1aedff4 100644 --- a/serde/src/de/impls.rs +++ b/serde/src/de/impls.rs @@ -12,82 +12,7 @@ use de::{Deserialize, Deserializer, EnumAccess, Error, SeqAccess, Unexpected, Va Visitor}; #[cfg(any(feature = "std", feature = "collections"))] -<<<<<<< HEAD use de::MapAccess; -||||||| merged common ancestors -use core::cmp; -use core::fmt; -#[cfg(feature = "std")] -use core::hash::{Hash, BuildHasher}; -use core::marker::PhantomData; -#[cfg(feature = "std")] -use std::net; -#[cfg(feature = "std")] -use std::path; -use core::str; -#[cfg(feature = "std")] -use std::ffi::{CString, OsString}; -#[cfg(all(feature = "std", feature="unstable"))] -use std::ffi::CStr; - -#[cfg(feature = "std")] -use std::rc::Rc; -#[cfg(all(feature = "alloc", not(feature = "std")))] -use alloc::rc::Rc; - -#[cfg(feature = "std")] -use std::sync::Arc; -#[cfg(all(feature = "alloc", not(feature = "std")))] -use alloc::arc::Arc; - -#[cfg(all(feature = "alloc", not(feature = "std")))] -use alloc::boxed::Box; - -#[cfg(feature = "std")] -use std::time::Duration; - -#[cfg(feature = "std")] -use std; -======= -use core::cmp; -use core::fmt; -#[cfg(feature = "std")] -use core::hash::{Hash, BuildHasher}; -use core::marker::PhantomData; -#[cfg(feature = "std")] -use std::net; -#[cfg(feature = "std")] -use std::path; -use core::str; -#[cfg(feature = "std")] -use std::ffi::{CString, OsString}; -#[cfg(all(feature = "std", feature="unstable"))] -use std::ffi::CStr; - -#[cfg(feature = "std")] -use std::rc::Rc; -#[cfg(all(feature = "alloc", not(feature = "std")))] -use alloc::rc::Rc; - -#[cfg(feature = "std")] -use std::sync::Arc; -#[cfg(all(feature = "alloc", not(feature = "std")))] -use alloc::arc::Arc; - -#[cfg(all(feature = "alloc", not(feature = "std")))] -use alloc::boxed::Box; - -use core::cell::{Cell, RefCell}; - -#[cfg(feature = "std")] -use std::sync::{Mutex, RwLock}; - -#[cfg(feature = "std")] -use std::time::Duration; - -#[cfg(feature = "std")] -use std; ->>>>>>> origin/master use de::from_primitive::FromPrimitive; @@ -1210,51 +1135,59 @@ where } } -<<<<<<< HEAD //////////////////////////////////////////////////////////////////////////////// -||||||| merged common ancestors -/////////////////////////////////////////////////////////////////////////////// -======= -impl Deserialize for Cell { + +impl<'de, T> Deserialize<'de> for Cell +where + T: Deserialize<'de> + Copy, +{ fn deserialize(deserializer: D) -> Result, D::Error> - where D: Deserializer + where + D: Deserializer<'de>, { - let val = try!(Deserialize::deserialize(deserializer)); - Ok(Cell::new(val)) + T::deserialize(deserializer).map(Cell::new) } } -impl Deserialize for RefCell { +impl<'de, T> Deserialize<'de> for RefCell +where + T: Deserialize<'de> +{ fn deserialize(deserializer: D) -> Result, D::Error> - where D: Deserializer + where + D: Deserializer<'de>, { - let val = try!(Deserialize::deserialize(deserializer)); - Ok(RefCell::new(val)) + T::deserialize(deserializer).map(RefCell::new) } } #[cfg(feature = "std")] -impl Deserialize for Mutex { +impl<'de, T> Deserialize<'de> for Mutex +where + T: Deserialize<'de>, +{ fn deserialize(deserializer: D) -> Result, D::Error> - where D: Deserializer + where + D: Deserializer<'de>, { - let val = try!(Deserialize::deserialize(deserializer)); - Ok(Mutex::new(val)) + T::deserialize(deserializer).map(Mutex::new) } } #[cfg(feature = "std")] -impl Deserialize for RwLock { +impl<'de, T> Deserialize<'de> for RwLock +where + T: Deserialize<'de>, +{ fn deserialize(deserializer: D) -> Result, D::Error> - where D: Deserializer + where + D: Deserializer<'de>, { - let val = try!(Deserialize::deserialize(deserializer)); - Ok(RwLock::new(val)) + T::deserialize(deserializer).map(RwLock::new) } } -/////////////////////////////////////////////////////////////////////////////// ->>>>>>> origin/master +//////////////////////////////////////////////////////////////////////////////// // This is a cleaned-up version of the impl generated by: // diff --git a/serde/src/lib.rs b/serde/src/lib.rs index 52335228..c97339d4 100644 --- a/serde/src/lib.rs +++ b/serde/src/lib.rs @@ -129,6 +129,7 @@ mod lib { pub use self::core::{u8, u16, u32, u64, usize}; pub use self::core::{f32, f64}; + pub use self::core::cell::{Cell, RefCell}; pub use self::core::clone::{self, Clone}; pub use self::core::convert::{self, From, Into}; pub use self::core::default::{self, Default}; @@ -187,6 +188,8 @@ mod lib { pub use std::path::{Path, PathBuf}; #[cfg(feature = "std")] pub use std::time::Duration; + #[cfg(feature = "std")] + pub use std::sync::{Mutex, RwLock}; #[cfg(feature = "unstable")] pub use core::nonzero::{NonZero, Zeroable}; diff --git a/serde/src/ser/impls.rs b/serde/src/ser/impls.rs index 10415680..4adfd24a 100644 --- a/serde/src/ser/impls.rs +++ b/serde/src/ser/impls.rs @@ -13,18 +13,7 @@ use ser::{Serialize, SerializeTuple, Serializer}; #[cfg(feature = "std")] use ser::Error; -<<<<<<< HEAD //////////////////////////////////////////////////////////////////////////////// -||||||| merged common ancestors -use core::marker::PhantomData; -======= -use core::cell::{Cell, RefCell}; - -#[cfg(feature = "std")] -use std::sync::{Mutex, RwLock}; - -use core::marker::PhantomData; ->>>>>>> origin/master macro_rules! primitive_impl { ($ty:ident, $method:ident $($cast:tt)*) => { @@ -360,28 +349,27 @@ deref_impl!(<'a, T: ?Sized> Serialize for Cow<'a, T> where T: Serialize + ToOwne #[cfg(feature = "unstable")] deref_impl!( Serialize for NonZero where T: Serialize + Zeroable); -<<<<<<< HEAD //////////////////////////////////////////////////////////////////////////////// -||||||| merged common ancestors -/////////////////////////////////////////////////////////////////////////////// -======= + impl Serialize for Cell - where T: Serialize + Copy +where + T: Serialize + Copy, { - #[inline] fn serialize(&self, serializer: S) -> Result - where S: Serializer + where + S: Serializer, { self.get().serialize(serializer) } } impl Serialize for RefCell - where T: Serialize +where + T: Serialize, { - #[inline] fn serialize(&self, serializer: S) -> Result - where S: Serializer + where + S: Serializer, { self.borrow().serialize(serializer) } @@ -389,11 +377,12 @@ impl Serialize for RefCell #[cfg(feature = "std")] impl Serialize for Mutex - where T: Serialize +where + T: Serialize, { - #[inline] fn serialize(&self, serializer: S) -> Result - where S: Serializer + where + S: Serializer, { match self.lock() { Ok(locked) => locked.serialize(serializer), @@ -404,11 +393,12 @@ impl Serialize for Mutex #[cfg(feature = "std")] impl Serialize for RwLock - where T: Serialize +where + T: Serialize, { - #[inline] fn serialize(&self, serializer: S) -> Result - where S: Serializer + where + S: Serializer, { match self.read() { Ok(locked) => locked.serialize(serializer), @@ -417,8 +407,7 @@ impl Serialize for RwLock } } -/////////////////////////////////////////////////////////////////////////////// ->>>>>>> origin/master +//////////////////////////////////////////////////////////////////////////////// impl Serialize for Result where diff --git a/serde_derive/Cargo.toml b/serde_derive/Cargo.toml index 086fbce8..8c8d147f 100644 --- a/serde_derive/Cargo.toml +++ b/serde_derive/Cargo.toml @@ -1,12 +1,6 @@ [package] name = "serde_derive" -<<<<<<< HEAD -version = "0.9.13" # remember to update html_root_url -||||||| merged common ancestors -version = "0.9.13" -======= -version = "0.9.14" ->>>>>>> origin/master +version = "0.9.14" # remember to update html_root_url authors = ["Erick Tryzelaar "] license = "MIT/Apache-2.0" description = "Macros 1.1 implementation of #[derive(Serialize, Deserialize)]" diff --git a/serde_test/Cargo.toml b/serde_test/Cargo.toml index 4feeca64..7f1c2602 100644 --- a/serde_test/Cargo.toml +++ b/serde_test/Cargo.toml @@ -1,12 +1,6 @@ [package] name = "serde_test" -<<<<<<< HEAD -version = "0.9.13" # remember to update html_root_url -||||||| merged common ancestors -version = "0.9.13" -======= -version = "0.9.14" ->>>>>>> origin/master +version = "0.9.14" # remember to update html_root_url authors = ["Erick Tryzelaar "] license = "MIT/Apache-2.0" description = "Token De/Serializer for testing De/Serialize implementations"