Preview Ruby 4.1 is a preview. It can change before the final release. Switch to Ruby 4.0 →
instance method
Set#delete?
(A) -> self?
delete?(object) → self or nil
set.c
View on GitHub ↗
static VALUE
set_i_delete_p(VALUE set, VALUE item)
{
st_data_t item_data = (st_data_t)item;
rb_check_frozen(set);
if (set_table_delete(RSET_TABLE(set), &item_data)) {
set_compact_after_delete(set);
return set;
}
return Qnil;
}
Like delete, but returns nil if the object is not in self:
Example
set = Set[0, 'zero', :zero] set.delete?(0) # => Set["zero", :zero] set.delete?(0) # => nil
Related: see Methods for Deleting.
See also
#delete
#delete_if
#compare_by_identity?
#difference
also in
4.0 · 3.4 · 3.3 · 3.2 · 3.1 · 3.0