[#64517] Fw: Re: Ruby and Rails to become Apache Incubator Project — Tetsuya Kitahata <[email protected]>

What do you think? >> Ruby developers

13 messages 2014/08/23

[#64615] [ruby-trunk - Feature #10181] [Open] New method File.openat() — oss-ruby-lang@...

Issue #10181 has been reported by Technorama Ltd..

10 messages 2014/08/28
[#64616] Re: [ruby-trunk - Feature #10181] [Open] New method File.openat() — Eric Wong <normalperson@...> 2014/08/28

I like this feature.

[#64671] Fwd: [ruby-changes:35240] normal:r47322 (trunk): symbol.c (rb_sym2id): do not return garbage object — SASADA Koichi <ko1@...>

Why this fix solve your problem?

9 messages 2014/08/30
[#64672] Re: Fwd: [ruby-changes:35240] normal:r47322 (trunk): symbol.c (rb_sym2id): do not return garbage object — SASADA Koichi <ko1@...> 2014/08/30

(2014/08/30 8:50), SASADA Koichi wrote:

[ruby-core:64282] [ruby-trunk - Feature #10118] Double splat for non-symbol keys

From: matz@...
Date: 2014-08-09 04:52:15 UTC
List: ruby-core #64282
Issue #10118 has been updated by Yukihiro Matsumoto.


Double splat was introduced to pass a hash given from keyword arguments.
Keyword argument hash is fundamentally a hash with symbol keys.

Matz.


----------------------------------------
Feature #10118: Double splat for non-symbol keys
https://bugs.ruby-lang.org/issues/10118#change-48268

* Author: Tsuyoshi Sawada
* Status: Feedback
* Priority: Normal
* Assignee: Yukihiro Matsumoto
* Category: syntax
* Target version: current: 2.2.0
----------------------------------------
The double splat operator ** only seems to work with hashes whose keys are symbols. It will not work when a key is a string, for example. This is true for both ways; for construction:

    def foo **; end
    foo(:a => 3) #=> nil
    foo("a" => 3) #=> ArgumentError: wrong number of arguments (1 for 0)

and destruction:

    def bar *; end
    bar(**{:a => 3}) #=> nil
    bar(**{"a" => 3}) #=> TypeError: wrong argument type String (expected Symbol)

This is confusing. I propose that the double splat syntax should be extended so that it works even when the keys are not symbols.

---Files--------------------------------
0001-vm.c-allow-to-splat-non-symbol-keys.patch (2.06 KB)


-- 
https://bugs.ruby-lang.org/

In This Thread

Prev Next