[#81492] [Ruby trunk Feature#13618] [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid — normalperson@...
Issue #13618 has been reported by normalperson (Eric Wong).
12 messages
2017/06/01
[#88695] Re: [Ruby trunk Feature#13618] [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
— Eric Wong <normalperson@...>
2018/08/27
> https://bugs.ruby-lang.org/issues/13618
[#81569] [Ruby trunk Feature#12589] VM performance improvement proposal — vmakarov@...
Issue #12589 has been updated by vmakarov (Vladimir Makarov).
3 messages
2017/06/04
[#81581] [Ruby trunk Bug#13632] Not processable interrupt queue for a thread after it's notified that FD is closed in some other thread. — sir.nickolas@...
Issue #13632 has been reported by nvashchenko (Nikolay Vashchenko).
4 messages
2017/06/05
[#81590] Re: [ruby-cvs:66197] ko1:r59023 (trunk): revert r59020 because it may fail some tests sometimes on some environment (http://ci.rvm.jp/). This revert is to check the reason of failures. — Eric Wong <normalperson@...>
ko1@ruby-lang.org wrote:
5 messages
2017/06/06
[#81591] Re: [ruby-cvs:66197] ko1:r59023 (trunk): revert r59020 because it may fail some tests sometimes on some environment (http://ci.rvm.jp/). This revert is to check the reason of failures.
— Eric Wong <normalperson@...>
2017/06/06
Eric Wong <normalperson@yhbt.net> wrote:
[#81596] Re: [ruby-cvs:66203] Re: Re: ko1:r59023 (trunk): revert r59020 because it may fail some tests sometimes on some environment (http://ci.rvm.jp/). This revert is to check the reason of failures.
— Eric Wong <normalperson@...>
2017/06/06
Eric Wong <normalperson@yhbt.net> wrote:
[#81825] [Ruby trunk Feature#13697] [PATCH]: futex based thread primitives — normalperson@...
Issue #13697 has been reported by normalperson (Eric Wong).
3 messages
2017/06/29
[ruby-core:81818] [Ruby trunk Feature#13692] Array#index?
From:
se8.and@...
Date:
2017-06-28 19:23:16 UTC
List:
ruby-core #81818
Issue #13692 has been updated by se8 (S辿bastien Durand).
This feature may not be that good, I agree. :)
I thought it could occasionally be useful when querying arrays. For example, we have this method in Ruby Facets:
https://github.com/rubyworks/facets/blob/master/lib/core/facets/array/from.rb
~~~ ruby
def from(index)
return [] if index >= size
self[index..-1]
end
~~~
Here the problem is that this method uses "index >= size" to check if the index exists. It's ok as long as we use positive indexes, but it doesn't work with negative indexes:
~~~ ruby
[0, 1, 2].from(1) # => [1, 2]
[0, 1, 2].from(10) # => []
[0, 1, 2].from(-10) # => nil - and I was expecting an empty array to chain other methods
~~~
Relying on index? solves that problem:
~~~ ruby
def from(index)
if index?(index)
self[index..-1]
else
[]
end
end
~~~
~~~ ruby
[0, 1, 2].from(-10) # => []
~~~
Also, it could be nice to have similar Hash and Array features:
~~~ ruby
key?(key) # => true or false
index?(index) # => true or false
key(value) # => a key
index(value) # => an index
~~~
But yes, Array is not a numerical Hash and is not designed to be used that way:
~~~ ruby
array = []
array[42] = 'Hello World !'
array.size # => 43
~~~
So I don't know really. It's not a life changing method for sure! :)
----------------------------------------
Feature #13692: Array#index?
https://bugs.ruby-lang.org/issues/13692#change-65514
* Author: se8 (S辿bastien Durand)
* Status: Open
* Priority: Normal
* Assignee:
* Target version:
----------------------------------------
Hello!
We currently have these methods:
~~~
Hash#key(value)
Hash#key?(key)
Array#index(value)
~~~
I was thinking we could add this tiny method:
~~~
Array#index?(index)
~~~
as this is sometimes useful to check if an array index exists.
~~~ ruby
class Array
def index?(index)
index.between?(0 - size, size - 1)
end
end
['a', 'b', 'c'].index?(0) # => true
['a', 'b', 'c'].index?(2) # => true
['a', 'b', 'c'].index?(3) # => false
['a', 'b', 'c'].index?(-1) # => true
['a', 'b', 'c'].index?(-3) # => true
['a', 'b', 'c'].index?(-4) # => false
[false, nil].index?(0) #=> true
[false, nil].index?(1) #=> true
~~~
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>