From 6c7bbea8c182c2bef30a8761f7dea4d56a62c567 Mon Sep 17 00:00:00 2001 From: Burdette Lamar Date: Sat, 27 Jun 2026 14:18:34 -0500 Subject: [PATCH 1/3] [DOC] Update Set#delete? documentation Co-authored-by: Jeremy Evans --- set.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/set.c b/set.c index 2f853d2a61a76e..c6bb14d87e154a 100644 --- a/set.c +++ b/set.c @@ -801,10 +801,15 @@ set_i_delete(VALUE set, VALUE item) /* * call-seq: - * delete?(obj) -> self or nil + * delete?(object) -> self or nil * - * Deletes the given object from the set and returns self. If the - * object is not in the set, returns nil. + * Like #delete, but returns +nil+ if the object is not in +self+: + * + * set = Set[0, 'zero', :zero] + * set.delete?(0) # => Set["zero", :zero] + * set.delete?(0) # => nil + * + * Related: see {Methods for Deleting}[rdoc-ref:Set@Methods+for+Deleting]. */ static VALUE set_i_delete_p(VALUE set, VALUE item) From 55e128f885c346573c2e09f52885769e0c45b39e Mon Sep 17 00:00:00 2001 From: Burdette Lamar Date: Sat, 27 Jun 2026 14:19:47 -0500 Subject: [PATCH 2/3] [DOC] Update Set#delete_if documentation --- set.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/set.c b/set.c index c6bb14d87e154a..16d0b755fb33a8 100644 --- a/set.c +++ b/set.c @@ -830,11 +830,20 @@ set_delete_if_i(st_data_t key, st_data_t dummy) /* * call-seq: - * delete_if { |o| ... } -> self + * delete_if {|element| ... } -> self * delete_if -> enumerator * - * Deletes every element of the set for which block evaluates to - * true, and returns self. Returns an enumerator if no block is given. + * With a block given, calls the block with each element in +self+; + * removes the element if the block returns a truthy value: + * + * 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}[rdoc-ref:Set@Methods+for+Deleting]. */ static VALUE set_i_delete_if(VALUE set) From 4323e4f2e82842cd0cb10ba706f1cb37e8a8dd67 Mon Sep 17 00:00:00 2001 From: Burdette Lamar Date: Sat, 27 Jun 2026 17:59:46 -0500 Subject: [PATCH 3/3] [DOC] Update Set#disjoint? documentation Co-authored-by: Jeremy Evans --- set.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/set.c b/set.c index 16d0b755fb33a8..97357ba62a23af 100644 --- a/set.c +++ b/set.c @@ -1833,15 +1833,15 @@ set_i_intersect(VALUE set, VALUE other) /* * call-seq: - * disjoint?(set) -> true or false + * disjoint?(enumerable) -> true or false * - * Returns true if the set and the given enumerable have no - * element in common. This method is the opposite of +intersect?+. + * Returns whether no element of +enumerable+ is present in +self+: * - * Set[1, 2, 3].disjoint? Set[3, 4] #=> false - * Set[1, 2, 3].disjoint? Set[4, 5] #=> true - * Set[1, 2, 3].disjoint? [3, 4] #=> false - * Set[1, 2, 3].disjoint? 4..5 #=> true + * set = Set[0, 'zero', :zero] + * set.disjoint?([1, 2, 3]) # => true + * set.disjoint?([0, 1, 2, 3]) # => false + * + * Related: see {Methods for Querying}[rdoc-ref:Set@Methods+for+Querying]. */ static VALUE set_i_disjoint(VALUE set, VALUE other)