Skip to content

Preview Ruby 4.1 is a preview. It can change before the final release. Switch to Ruby 4.0 →

instance method

Set#delete_if

() { (A) -> untyped } -> self
delete_if {|element| ... } → self
delete_if → enumerator

With a block given, calls the block with each element in self; removes the element if the block returns a truthy value:

Example
set = Set[*0..9]
# => Set[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
set.delete_if {|element| element.even? }
# => Set[1, 3, 5, 7, 9]

With no block given, returns an Enumerator.

Related: Methods for Deleting.

See also #delete? #difference #delete #disjoint? also in 4.0 · 3.4 · 3.3 · 3.2 · 3.1 · 3.0