Method: Set#delete_if

Defined in:
lib/set.rb

#delete_ifObject

Deletes every element of the set for which block evaluates to true, and returns self. Returns an enumerator if no block is given.


386
387
388
389
390
391
392
# File 'lib/set.rb', line 386

def delete_if
  block_given? or return enum_for(__method__) { size }
  # @hash.delete_if should be faster, but using it breaks the order
  # of enumeration in subclasses.
  select { |o| yield o }.each { |o| @hash.delete(o) }
  self
end