Project

General

Profile

Bug #12412

Updated by dsferreira (Daniel Ferreira) about 3 years ago

I wonder if we couldn't extend the safe navigation operator to work with any object rather than just nil.

I tend to still use this kind do a lot of code in some scenarios, specially when I work with objects with dynamic interfaces or arguments with different possible object types: like this:

~~~ ruby
class Foo
def bar(baz)
if baz.respond_to?(:qux)
return baz.qux
end
'whatever'
end
end
~~~

What if we extend the safe navigation operator to work with any kind of object?
If it doesn't respond to the method it would return nil like this:

~~~ ruby
class Foo
def bar(baz)
baz&.qux || 'whatever'
end
end
~~~

Back