ruby-changes:63208
From: Burdette <ko1@a...>
Date: Wed, 30 Sep 2020 09:15:58 +0900 (JST)
Subject: [ruby-changes:63208] 48b94b7919 (master): Enhanced RDoc for String#upto (#3603)
https://git.ruby-lang.org/ruby.git/commit/?id=48b94b7919 From 48b94b791997881929c739c64f95ac30f3fd0bb9 Mon Sep 17 00:00:00 2001 From: Burdette Lamar <BurdetteLamar@Y...> Date: Tue, 29 Sep 2020 19:15:39 -0500 Subject: Enhanced RDoc for String#upto (#3603) * Enhanced RDoc for String#upto diff --git a/string.c b/string.c index 4ffd57c..1f8e1f4 100644 --- a/string.c +++ b/string.c @@ -4344,35 +4344,29 @@ str_upto_i(VALUE str, VALUE arg) https://github.com/ruby/ruby/blob/trunk/string.c#L4344 /* * call-seq: - * str.upto(other_str, exclusive=false) {|s| block } -> str - * str.upto(other_str, exclusive=false) -> an_enumerator - * - * Iterates through successive values, starting at <i>str</i> and - * ending at <i>other_str</i> inclusive, passing each value in turn - * to the block. The String#succ method is used to generate each - * value. If optional second argument exclusive is omitted or is - * false, the last value will be included; otherwise it will be - * excluded. - * - * If no block is given, an enumerator is returned instead. - * - * "a8".upto("b6") {|s| print s, ' ' } - * for s in "a8".."b6" - * print s, ' ' - * end - * - * <em>produces:</em> - * - * a8 a9 b0 b1 b2 b3 b4 b5 b6 - * a8 a9 b0 b1 b2 b3 b4 b5 b6 - * - * If <i>str</i> and <i>other_str</i> contains only ascii numeric characters, - * both are recognized as decimal numbers. In addition, the width of - * string (e.g. leading zeros) is handled appropriately. - * - * "9".upto("11").to_a #=> ["9", "10", "11"] - * "25".upto("5").to_a #=> [] - * "07".upto("11").to_a #=> ["07", "08", "09", "10", "11"] + * string.upto(other_string, exclusive = false) {|string| ... } -> self + * string.upto(other_string, exclusive = false) -> new_enumerator + * + * With a block given, calls the block with each \String value + * returned by successive calls to String#succ; + * the first value is +self+, the next is <tt>self.succ</tt>, and so on; + * the sequence terminates when value +other_string+ is reached; + * returns +self+: + * 'a8'.upto('b6') {|s| print s, ' ' } # => "a8" + * Output: + * a8 a9 b0 b1 b2 b3 b4 b5 b6 + * + * If argument +exclusive+ is given as a truthy object, the last value is omitted: + * 'a8'.upto('b6', true) {|s| print s, ' ' } # => "a8" + * Output: + * a8 a9 b0 b1 b2 b3 b4 b5 + * + * If +other_string+ would not be reached, does not call the block: + * '25'.upto('5') {|s| fail s } + * 'aa'.upto('a') {|s| fail s } + * + * With no block given, returns a new \Enumerator: + * 'a8'.upto('b6') # => #<Enumerator: "a8":upto("b6")> */ static VALUE -- cgit v0.10.2 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/