Class: Array

Inherits:
Object
  • Object
show all
Defined in:
lib/doppelganger/exts/array.rb

Instance Method Summary collapse

Instance Method Details

#comparing_collectObject

:nodoc:



16
17
18
19
20
21
22
# File 'lib/doppelganger/exts/array.rb', line 16

def comparing_collect #:nodoc:
  accumulator = [] # collect implementation copied from Rubinius
  stepwise do |element1, element2|
    accumulator << element1 if yield(element1, element2)
  end
  accumulator.compact.uniq
end

#duplicates?(element) ⇒ Boolean

Return all duplicate elments (uses == for comparison).

Returns:

  • (Boolean)


3
4
5
# File 'lib/doppelganger/exts/array.rb', line 3

def duplicates?(element)
  (self.select {|elem| elem == element}).size > 1
end

#stepwise(compare_method) ⇒ Object

:nodoc:



7
8
9
10
11
12
13
14
# File 'lib/doppelganger/exts/array.rb', line 7

def stepwise(compare_method) #:nodoc:
  self.each do |element1|
    self.each do |element2|
      next if element1.send(compare_method) == element2.send(compare_method)
      yield element1, element2
    end
  end
end