about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJorge Aparicio <japaricious@gmail.com>2014-11-26 23:50:12 -0500
committerJorge Aparicio <japaricious@gmail.com>2014-12-03 10:41:48 -0500
commit5cfac942018b3f8e0b384c49d6564fcff25634e6 (patch)
treea8ff3c15e0553d35fd3a2f1c2f93cbd1038858a9
parent09707d70a48b7bb1a180f44e233dfe36b196ad46 (diff)
downloadrust-5cfac942018b3f8e0b384c49d6564fcff25634e6.tar.gz
rust-5cfac942018b3f8e0b384c49d6564fcff25634e6.zip
Deprecate Equiv
-rw-r--r--src/libcollections/str.rs1
-rw-r--r--src/libcollections/string.rs3
-rw-r--r--src/libcollections/vec.rs3
-rw-r--r--src/libcore/cmp.rs2
-rw-r--r--src/libcore/ptr.rs4
-rw-r--r--src/libcore/slice.rs6
-rw-r--r--src/libcore/str.rs2
-rw-r--r--src/libgraphviz/maybe_owned_vec.rs1
-rw-r--r--src/libstd/collections/hash/map.rs2
-rw-r--r--src/libsyntax/parse/token.rs1
10 files changed, 20 insertions, 5 deletions
diff --git a/src/libcollections/str.rs b/src/libcollections/str.rs
index c6fa1332186..ad0a5e76176 100644
--- a/src/libcollections/str.rs
+++ b/src/libcollections/str.rs
@@ -563,6 +563,7 @@ impl<'a> Ord for MaybeOwned<'a> {
     }
 }
 
+#[allow(deprecated)]
 #[deprecated = "use std::str::CowString"]
 impl<'a, S: Str> Equiv<S> for MaybeOwned<'a> {
     #[inline]
diff --git a/src/libcollections/string.rs b/src/libcollections/string.rs
index 8917afa34b1..fbb0bb5c4ce 100644
--- a/src/libcollections/string.rs
+++ b/src/libcollections/string.rs
@@ -822,7 +822,8 @@ impl<H: hash::Writer> hash::Hash<H> for String {
     }
 }
 
-#[experimental = "waiting on Equiv stabilization"]
+#[allow(deprecated)]
+#[deprecated = "Use overloaded `core::cmp::PartialEq`"]
 impl<'a, S: Str> Equiv<S> for String {
     #[inline]
     fn equiv(&self, other: &S) -> bool {
diff --git a/src/libcollections/vec.rs b/src/libcollections/vec.rs
index c40f0c19c09..2396cf8cec6 100644
--- a/src/libcollections/vec.rs
+++ b/src/libcollections/vec.rs
@@ -609,7 +609,8 @@ impl<T: PartialOrd> PartialOrd for Vec<T> {
 #[unstable = "waiting on Eq stability"]
 impl<T: Eq> Eq for Vec<T> {}
 
-#[experimental]
+#[allow(deprecated)]
+#[deprecated = "Use overloaded `core::cmp::PartialEq`"]
 impl<T: PartialEq, Sized? V: AsSlice<T>> Equiv<V> for Vec<T> {
     #[inline]
     fn equiv(&self, other: &V) -> bool { self.as_slice() == other.as_slice() }
diff --git a/src/libcore/cmp.rs b/src/libcore/cmp.rs
index d5001a08b1d..df19256471e 100644
--- a/src/libcore/cmp.rs
+++ b/src/libcore/cmp.rs
@@ -240,7 +240,7 @@ pub trait PartialOrd<Sized? Rhs = Self> for Sized?: PartialEq<Rhs> {
 /// of different types. The most common use case for this relation is
 /// container types; e.g. it is often desirable to be able to use `&str`
 /// values to look up entries in a container with `String` keys.
-#[experimental = "Better solutions may be discovered."]
+#[deprecated = "Use overloaded core::cmp::PartialEq"]
 pub trait Equiv<Sized? T> for Sized? {
     /// Implement this function to decide equivalent values.
     fn equiv(&self, other: &T) -> bool;
diff --git a/src/libcore/ptr.rs b/src/libcore/ptr.rs
index 5e2f5529e8d..416bc4588b4 100644
--- a/src/libcore/ptr.rs
+++ b/src/libcore/ptr.rs
@@ -321,12 +321,16 @@ impl<T> PartialEq for *mut T {
 impl<T> Eq for *mut T {}
 
 // Equivalence for pointers
+#[allow(deprecated)]
+#[deprecated = "Use overloaded `core::cmp::PartialEq`"]
 impl<T> Equiv<*mut T> for *const T {
     fn equiv(&self, other: &*mut T) -> bool {
         self.to_uint() == other.to_uint()
     }
 }
 
+#[allow(deprecated)]
+#[deprecated = "Use overloaded `core::cmp::PartialEq`"]
 impl<T> Equiv<*const T> for *mut T {
     fn equiv(&self, other: &*const T) -> bool {
         self.to_uint() == other.to_uint()
diff --git a/src/libcore/slice.rs b/src/libcore/slice.rs
index 12cd20584a1..85bd6adf8b8 100644
--- a/src/libcore/slice.rs
+++ b/src/libcore/slice.rs
@@ -1816,13 +1816,15 @@ impl<A, B> PartialEq<[B]> for [A] where A: PartialEq<B> {
 #[unstable = "waiting for DST"]
 impl<T: Eq> Eq for [T] {}
 
-#[unstable = "waiting for DST"]
+#[allow(deprecated)]
+#[deprecated = "Use overloaded `core::cmp::PartialEq`"]
 impl<T: PartialEq, Sized? V: AsSlice<T>> Equiv<V> for [T] {
     #[inline]
     fn equiv(&self, other: &V) -> bool { self.as_slice() == other.as_slice() }
 }
 
-#[unstable = "waiting for DST"]
+#[allow(deprecated)]
+#[deprecated = "Use overloaded `core::cmp::PartialEq`"]
 impl<'a,T:PartialEq, Sized? V: AsSlice<T>> Equiv<V> for &'a mut [T] {
     #[inline]
     fn equiv(&self, other: &V) -> bool { self.as_slice() == other.as_slice() }
diff --git a/src/libcore/str.rs b/src/libcore/str.rs
index b9586399aec..4be628f0ac3 100644
--- a/src/libcore/str.rs
+++ b/src/libcore/str.rs
@@ -1248,6 +1248,8 @@ pub mod traits {
         }
     }
 
+    #[allow(deprecated)]
+    #[deprecated = "Use overloaded `core::cmp::PartialEq`"]
     impl<S: Str> Equiv<S> for str {
         #[inline]
         fn equiv(&self, other: &S) -> bool { eq_slice(self, other.as_slice()) }
diff --git a/src/libgraphviz/maybe_owned_vec.rs b/src/libgraphviz/maybe_owned_vec.rs
index 6482a514115..05932db6632 100644
--- a/src/libgraphviz/maybe_owned_vec.rs
+++ b/src/libgraphviz/maybe_owned_vec.rs
@@ -96,6 +96,7 @@ impl<'a, T: Ord> Ord for MaybeOwnedVector<'a, T> {
     }
 }
 
+#[allow(deprecated)]
 impl<'a, T: PartialEq, Sized? V: AsSlice<T>> Equiv<V> for MaybeOwnedVector<'a, T> {
     fn equiv(&self, other: &V) -> bool {
         self.as_slice() == other.as_slice()
diff --git a/src/libstd/collections/hash/map.rs b/src/libstd/collections/hash/map.rs
index 50a00714ea0..bd07dbf5c91 100644
--- a/src/libstd/collections/hash/map.rs
+++ b/src/libstd/collections/hash/map.rs
@@ -425,12 +425,14 @@ impl<K: Eq + Hash<S>, V, S, H: Hasher<S>> HashMap<K, V, H> {
         table::make_hash(&self.hasher, x)
     }
 
+    #[allow(deprecated)]
     fn search_equiv<'a, Sized? Q: Hash<S> + Equiv<K>>(&'a self, q: &Q)
                     -> Option<FullBucketImm<'a, K, V>> {
         let hash = self.make_hash(q);
         search_hashed(&self.table, &hash, |k| q.equiv(k)).into_option()
     }
 
+    #[allow(deprecated)]
     fn search_equiv_mut<'a, Sized? Q: Hash<S> + Equiv<K>>(&'a mut self, q: &Q)
                     -> Option<FullBucketMut<'a, K, V>> {
         let hash = self.make_hash(q);
diff --git a/src/libsyntax/parse/token.rs b/src/libsyntax/parse/token.rs
index 1376f59d79f..52b54bc7f2d 100644
--- a/src/libsyntax/parse/token.rs
+++ b/src/libsyntax/parse/token.rs
@@ -623,6 +623,7 @@ impl fmt::Show for InternedString {
     }
 }
 
+#[allow(deprecated)]
 impl<'a> Equiv<&'a str> for InternedString {
     fn equiv(&self, other: & &'a str) -> bool {
         (*other) == self.string.as_slice()