Project

General

Profile

Actions

Backport #1210

closed

Array behavior for minus/uniq is not as expected for hash elements

Added by HitsvilleUSA (Chris Morris) about 15 years ago. Updated over 4 years ago.


Description

=begin
Array#- does not remove an element of type hash (line 8):
irb(main):001:0> a = {}
=> {}
irb(main):002:0> b = {}
=> {}
irb(main):003:0> c = []
=> []
irb(main):004:0> a == b
=> true
irb(main):005:0> c << a
=> [{}]
irb(main):006:0> c.index(a)
=> 0
irb(main):007:0> c.index(b)
=> 0
irb(main):008:0> c - [b]
=> [{}]
irb(main):009:0> c - [a]
=> []

Array#uniq does not remove an element of type hash (line 7):
irb(main):001:0> a = {}
=> {}
irb(main):002:0> b = {}
=> {}
irb(main):003:0> c = []
=> []
irb(main):004:0> a == b
=> true
irb(main):005:0> c << a
=> [{}]
irb(main):006:0> c << b
=> [{}, {}]
irb(main):007:0> c.uniq
=> [{}, {}]
=end

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0