[#99115] [Ruby master Bug#17023] How to prevent String memory to be relocated in ruby-ffi — larskanis@...
Issue #17023 has been reported by larskanis (Lars Kanis).
22 messages
2020/07/10
[#99375] [Ruby master Feature#17055] Allow suppressing uninitialized instance variable and method redefined verbose mode warnings — merch-redmine@...
Issue #17055 has been reported by jeremyevans0 (Jeremy Evans).
29 messages
2020/07/28
[#101207] [Ruby master Feature#17055] Allow suppressing uninitialized instance variable and method redefined verbose mode warnings
— merch-redmine@...
2020/12/02
Issue #17055 has been updated by jeremyevans0 (Jeremy Evans).
[#101231] Re: [Ruby master Feature#17055] Allow suppressing uninitialized instance variable and method redefined verbose mode warnings
— Austin Ziegler <halostatue@...>
2020/12/03
What does this mean?
[ruby-core:99380] [Ruby master Feature#17056] Array#index: Allow specifying start index to search like String#index does
From:
tyler@...
Date:
2020-07-28 23:53:57 UTC
List:
ruby-core #99380
Issue #17056 has been reported by TylerRick (Tyler Rick).
----------------------------------------
Feature #17056: Array#index: Allow specifying start index to search like String#index does
https://bugs.ruby-lang.org/issues/17056
* Author: TylerRick (Tyler Rick)
* Status: Open
* Priority: Normal
----------------------------------------
The docs for `String#index` say:
> If the second parameter is present, it specifies the position in the string to begin the search.
So you can do:
```ruby
> 'abcabc'.index('a',2)
#=> 3
'abcabc'.index('a')
#=> 0
```
I would expect to also be able to do:
```ruby
'abcabc'.chars.index('a')
#=> 0
'abcabc'.chars.index('a', 2)
ArgumentError: wrong number of arguments (given 2, expected 0..1)
from (pry):19:in `index'
```
After using this feature on strings, it is surprising to find that it is not available on arrays.
This would also give Ruby better parity with other programming languages that support this, like Python:
```python
>>> list('abcabc')
['a', 'b', 'c', 'a', 'b', 'c']
>>> list('abcabc').index('a')
0
>>> list('abcabc').index('a', 2)
3
```
Ideally, we would also add an optional end index arg as well, but `String#index` does not have one, so we could a separate proposal to add `end` to both methods at the same time.
Other languages that allow specifying both start and end indexes:
- [Python](https://docs.python.org/3/tutorial/datastructures.html)
- [C#](https://docs.microsoft.com/en-us/dotnet/api/system.array.indexof?view=netcore-3.1)
- ...
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:[email protected]?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>