A colleague was surprised that uniq didn't seem to work for instances of classes he created.
Index: array.c
===================================================================
--- array.c (revision 11516)
+++ array.c (working copy)
@@ -2588,6 +2588,8 @@
* containing elements common to the two arrays, with no duplicates.
*
* [ 1, 1, 3, 5 ] & [ 1, 2, 3 ] #=> [ 1, 3 ]
+ *
+ * (a is a duplicate of b if a.hash == b.hash and a.eql?(b))
*/
@@ -2621,6 +2623,8 @@
*
* [ "a", "b", "c" ] | [ "c", "d", "a" ]
* #=> [ "a", "b", "c", "d" ]
+ *
+ * (a is a duplicate of b if a.hash == b.hash and a.eql?(b))
*/
static VALUE
@@ -2661,6 +2665,8 @@
* a.uniq! #=> ["a", "b", "c"]
* b = [ "a", "b", "c" ]
* b.uniq! #=> nil
+ *
+ * (a is a duplicate of b if a.hash == b.hash and a.eql?(b))
*/
static VALUE
@@ -2694,6 +2700,8 @@
*
* a = [ "a", "a", "b", "b", "c" ]
* a.uniq #=> ["a", "b", "c"]
+ *
+ * (a is a duplicate of b if a.hash == b.hash and a.eql?(b))
*/
static VALUE
|