[DOC] Fix and improve array slicing example in range.c

* [DOC] Fix typo in range.c

  In the example of the beginless range used for array slicing,
  '..' range literal was used while the '...' literal was expected

* [DOC] Add example for array slicing in range.c

  Add an example for the array slice with the beginless range
  using the '..' range literal

* [DOC] Add comments for array slicing in range.c

  Add comments to make crystal clear what the '..' and '...'
  range literals do when used for array slicing as beginless range
This commit is contained in:
Iskren 2024-07-17 04:42:29 +02:00 committed by GitHub
parent dabb6c49aa
commit 371790165f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
Notes: git 2024-07-17 02:42:47 +00:00
Merged: https://github.com/ruby/ruby/pull/11150

Merged-By: nobu <nobu@ruby-lang.org>

View file

@ -2438,8 +2438,12 @@ range_overlap(VALUE range, VALUE other)
* A beginless range may be used to slice an array:
*
* a = [1, 2, 3, 4]
* r = (..2) # => nil...2
* a[r] # => [1, 2]
* # Include the third array element in the slice
* r = (..2) # => nil..2
* a[r] # => [1, 2, 3]
* # Exclude the third array element from the slice
* r = (...2) # => nil...2
* a[r] # => [1, 2]
*
* \Method +each+ for a beginless range raises an exception.
*