From 09100508e66694cdc3fb8c0867cf56b2fbfb1ceb Mon Sep 17 00:00:00 2001 From: Burdette Lamar Date: Thu, 10 Oct 2024 15:03:40 -0500 Subject: [PATCH] [DOC] Tweaks for Array#reverse_each (#11855) --- array.c | 46 +++++++++++++--------------------------------- 1 file changed, 13 insertions(+), 33 deletions(-) diff --git a/array.c b/array.c index d28f03cb4c81ea..2a2893cffeec35 100644 --- a/array.c +++ b/array.c @@ -2633,6 +2633,7 @@ rb_ary_each(VALUE ary) * * a = [:foo, 'bar', 2] * a.each_index {|index| puts index; a.clear if index > 0 } + * a # => [] * * Output: * @@ -2658,47 +2659,26 @@ rb_ary_each_index(VALUE ary) /* * call-seq: - * array.reverse_each {|element| ... } -> self - * array.reverse_each -> Enumerator + * reverse_each {|element| ... } -> self + * reverse_each -> Enumerator * - * Iterates backwards over array elements. - * - * When a block given, passes, in reverse order, each element to the block; + * When a block given, iterates backwards over the elements of +self+, + * passing, in reverse order, each element to the block; * returns +self+: * - * a = [:foo, 'bar', 2] - * a.reverse_each {|element| puts "#{element.class} #{element}" } - * - * Output: - * - * Integer 2 - * String bar - * Symbol foo + * a = [] + * [0, 1, 2].reverse_each {|element| a.push(element) } + * a # => [2, 1, 0] * * Allows the array to be modified during iteration: * - * a = [:foo, 'bar', 2] - * a.reverse_each {|element| puts element; a.clear if element.to_s.start_with?('b') } - * - * Output: - * - * 2 - * bar - * - * When no block given, returns a new Enumerator: - * - * a = [:foo, 'bar', 2] - * e = a.reverse_each - * e # => # - * a1 = e.each {|element| puts "#{element.class} #{element}" } - * - * Output: + * a = ['a', 'b', 'c'] + * a.reverse_each {|element| a.clear if element.start_with?('b') } + * a # => [] * - * Integer 2 - * String bar - * Symbol foo + * When no block given, returns a new Enumerator. * - * Related: #each, #each_index. + * Related: see {Methods for Iterating}[rdoc-ref:Array@Methods+for+Iterating]. */ static VALUE