Add {,de}serializer for VecMap

This commit is contained in:
Erick Tryzelaar
2015-03-26 07:45:22 -07:00
parent aa8d13456a
commit 44edfa5974
3 changed files with 68 additions and 3 deletions
+12 -1
View File
@@ -1,5 +1,5 @@
use std::collections::hash_state::HashState;
use std::collections::{BTreeMap, BTreeSet, HashMap, HashSet};
use std::collections::{BTreeMap, BTreeSet, HashMap, HashSet, VecMap};
use std::hash::Hash;
use std::path;
use std::rc::Rc;
@@ -587,6 +587,17 @@ impl<K, V, H> Serialize for HashMap<K, V, H>
}
}
impl<V> Serialize for VecMap<V>
where V: Serialize,
{
#[inline]
fn serialize<S>(&self, serializer: &mut S) -> Result<(), S::Error>
where S: Serializer,
{
serializer.visit_map(MapIteratorVisitor::new(self.iter(), Some(self.len())))
}
}
///////////////////////////////////////////////////////////////////////////////
impl<'a, T> Serialize for &'a T where T: Serialize {