diff options
| author | Alexis Beingessner <a.beingessner@gmail.com> | 2014-12-17 10:16:10 -0500 |
|---|---|---|
| committer | Alexis Beingessner <a.beingessner@gmail.com> | 2014-12-18 16:20:32 -0500 |
| commit | 67d3823fc3ffa8b4e86a2d7cb007339a042605e7 (patch) | |
| tree | 04212ce2abcc37dd8d803756451d9a77ac8fe070 /src/libserialize | |
| parent | 0bd4dc68e6f45a4ffe8e12642aa557638ab2f5bd (diff) | |
| download | rust-67d3823fc3ffa8b4e86a2d7cb007339a042605e7.tar.gz rust-67d3823fc3ffa8b4e86a2d7cb007339a042605e7.zip | |
enumset fallout
Diffstat (limited to 'src/libserialize')
| -rw-r--r-- | src/libserialize/collection_impls.rs | 66 | ||||
| -rw-r--r-- | src/libserialize/lib.rs | 2 |
2 files changed, 6 insertions, 62 deletions
diff --git a/src/libserialize/collection_impls.rs b/src/libserialize/collection_impls.rs index 8fb025623d4..f2d79b13346 100644 --- a/src/libserialize/collection_impls.rs +++ b/src/libserialize/collection_impls.rs @@ -15,9 +15,8 @@ use std::default::Default; use std::hash::{Hash, Hasher}; use {Decodable, Encodable, Decoder, Encoder}; -use std::collections::{DList, RingBuf, BTreeMap, BTreeSet, HashMap, HashSet, - TrieMap, TrieSet, VecMap}; -use std::collections::enum_set::{EnumSet, CLike}; +use std::collections::{DList, RingBuf, BTreeMap, BTreeSet, HashMap, HashSet, VecMap}; +use collections::enum_set::{EnumSet, CLike}; impl< E, @@ -98,7 +97,7 @@ impl< K: Decodable<D, E> + PartialEq + Ord, V: Decodable<D, E> + PartialEq > Decodable<D, E> for BTreeMap<K, V> { - fn decode(d: &mut D) -> Result<TreeMap<K, V>, E> { + fn decode(d: &mut D) -> Result<BTreeMap<K, V>, E> { d.read_map(|d, len| { let mut map = BTreeMap::new(); for i in range(0u, len) { @@ -133,7 +132,7 @@ impl< D: Decoder<E>, T: Decodable<D, E> + PartialEq + Ord > Decodable<D, E> for BTreeSet<T> { - fn decode(d: &mut D) -> Result<TreeSet<T>, E> { + fn decode(d: &mut D) -> Result<BTreeSet<T>, E> { d.read_seq(|d, len| { let mut set = BTreeSet::new(); for i in range(0u, len) { @@ -259,63 +258,6 @@ impl< E, S: Encoder<E>, V: Encodable<S, E> -> Encodable<S, E> for TrieMap<V> { - fn encode(&self, e: &mut S) -> Result<(), E> { - e.emit_map(self.len(), |e| { - for (i, (key, val)) in self.iter().enumerate() { - try!(e.emit_map_elt_key(i, |e| key.encode(e))); - try!(e.emit_map_elt_val(i, |e| val.encode(e))); - } - Ok(()) - }) - } -} - -impl< - E, - D: Decoder<E>, - V: Decodable<D, E> -> Decodable<D, E> for TrieMap<V> { - fn decode(d: &mut D) -> Result<TrieMap<V>, E> { - d.read_map(|d, len| { - let mut map = TrieMap::new(); - for i in range(0u, len) { - let key = try!(d.read_map_elt_key(i, |d| Decodable::decode(d))); - let val = try!(d.read_map_elt_val(i, |d| Decodable::decode(d))); - map.insert(key, val); - } - Ok(map) - }) - } -} - -impl<E, S: Encoder<E>> Encodable<S, E> for TrieSet { - fn encode(&self, s: &mut S) -> Result<(), E> { - s.emit_seq(self.len(), |s| { - for (i, e) in self.iter().enumerate() { - try!(s.emit_seq_elt(i, |s| e.encode(s))); - } - Ok(()) - }) - } -} - -impl<E, D: Decoder<E>> Decodable<D, E> for TrieSet { - fn decode(d: &mut D) -> Result<TrieSet, E> { - d.read_seq(|d, len| { - let mut set = TrieSet::new(); - for i in range(0u, len) { - set.insert(try!(d.read_seq_elt(i, |d| Decodable::decode(d)))); - } - Ok(set) - }) - } -} - -impl< - E, - S: Encoder<E>, - V: Encodable<S, E> > Encodable<S, E> for VecMap<V> { fn encode(&self, e: &mut S) -> Result<(), E> { e.emit_map(self.len(), |e| { diff --git a/src/libserialize/lib.rs b/src/libserialize/lib.rs index 390b3976562..e700d102fef 100644 --- a/src/libserialize/lib.rs +++ b/src/libserialize/lib.rs @@ -33,6 +33,8 @@ extern crate test; #[phase(plugin, link)] extern crate log; +extern crate collections; + pub use self::serialize::{Decoder, Encoder, Decodable, Encodable, DecoderHelpers, EncoderHelpers}; |
