[#70977] [Ruby trunk - Feature #11473] Immutable String literal in Ruby 3 — arai@...
Issue #11473 has been updated by Shunichi Arai.
3 messages
2015/10/04
[#71062] [Ruby trunk - Bug #10892] Deadlock in autoload — eregontp@...
Issue #10892 has been updated by Benoit Daloze.
4 messages
2015/10/12
[#71090] Re: [Ruby trunk - Bug #10892] Deadlock in autoload
— Eric Wong <normalperson@...>
2015/10/14
eregontp@gmail.com wrote:
[#71127] [Ruby trunk - Feature #11607] [PATCH] fiddle: release GVL for ffi_call — normalperson@...
Issue #11607 has been updated by Eric Wong.
3 messages
2015/10/20
[#71164] [Ruby trunk - Feature #11614] [Open] [RFC] use id_table for constant tables — normalperson@...
Issue #11614 has been reported by Eric Wong.
3 messages
2015/10/22
[#71211] [Ruby trunk - Feature #11607] [PATCH] fiddle: release GVL for ffi_call — naruse@...
Issue #11607 has been updated by Yui NARUSE.
6 messages
2015/10/27
[#71212] Re: [Ruby trunk - Feature #11607] [PATCH] fiddle: release GVL for ffi_call
— Eric Wong <normalperson@...>
2015/10/27
Yes, user must check if the function is MT-safe. Probably fine
[#71246] Re: [Ruby trunk - Feature #11607] [PATCH] fiddle: release GVL for ffi_call
— Aaron Patterson <tenderlove@...>
2015/10/28
On Tue, Oct 27, 2015 at 08:54:07AM +0000, Eric Wong wrote:
[#71254] Re: [Ruby trunk - Feature #11607] [PATCH] fiddle: release GVL for ffi_call
— Eric Wong <normalperson@...>
2015/10/28
Aaron Patterson <tenderlove@ruby-lang.org> wrote:
[#71230] [Ruby trunk - Feature #11625] Unlock GVL for SHA1 calculations — tenderlove@...
Issue #11625 has been updated by Aaron Patterson.
5 messages
2015/10/27
[#71236] Re: [Ruby trunk - Feature #11625] Unlock GVL for SHA1 calculations
— Юрий Соколов <funny.falcon@...>
2015/10/28
What's about other hashsum algos? MD5, SHA2, etc
[#71242] Re: [Ruby trunk - Feature #11625] Unlock GVL for SHA1 calculations
— Eric Wong <normalperson@...>
2015/10/28
Юрий Соколов <funny.falcon@gmail.com> wrote:
[#71239] [Ruby trunk - Bug #11384] multi-threaded autoload sometimes fails — shugo@...
Issue #11384 has been updated by Shugo Maeda.
4 messages
2015/10/28
[ruby-core:71131] [Ruby trunk - Feature #11034] [Closed] Nil Conditional
From:
matz@...
Date:
2015-10-21 08:06:46 UTC
List:
ruby-core #71131
Issue #11034 has been updated by Yukihiro Matsumoto.
Status changed from Open to Closed
We will introduce `.?` #11537 which address this proposal.
Matz.
----------------------------------------
Feature #11034: Nil Conditional
https://bugs.ruby-lang.org/issues/11034#change-54502
* Author: Grzegorz Bizon
* Status: Closed
* Priority: Normal
* Assignee:
----------------------------------------
Hi everyone !
Some time ago I was thinking about Nil Conditional Operator in Ruby (`??`). This would be particularly useful to avoid frequent checking for nil, and should behave and look like Null Conditional Operator introduced in C# 6.0.
I was thinking about something like this (assume `var` is nil or doesn't exist):
~~~ruby
var??.method1.method2(123, 345).method3 { |i| i == 1 }
=> nil
~~~
When `var` is nil or doesn't exist, code above should return nil or NilConditionalClass object instead of raising NoMethodError or NameError.
This can also work with methods (assume `var` exists):
~~~ruby
var.method1??.method2(a, b)
=> nil
~~~
When `var` exists and can receive `method1`, but `method1` returns nil - this shouldn return nil instead of raising `NoMethodError: undefined method `method2' for nil:NilClass`
When `var` exists and is not nil, and can receive `method1`, and object returned by `method1` can receive `method2` this, of course should behave as expected (like version without `??` operator) and return value according to implementation of method2.
When `var` doesn't exist - this should raise NameError.
I tried to create gem for that (https://github.com/grzesiek/nil-conditional) but from now on, only native implementation seems reasonable.
What do you think about that feature ? Maybe it is already considered, but I couldn't find anything similar at Google/this issue tracker (in that case I'm sorry for duplicate).
Thanks in advance for feedback !
Kind regards,
Grzegorz
--
https://bugs.ruby-lang.org/