[#37959] [Bug:trunk] I can modify literals — Yusuke ENDOH <mame@...>

遠藤です。

13 messages 2009/02/10

[#38005] Is URI.decode() broken? — MOROHASHI Kyosuke <moronatural@...>

もろはしです。いつもお世話になっております。

39 messages 2009/02/14
[#38006] Re: Is URI.decode() broken? — Nobuyoshi Nakada <nobu@...> 2009/02/14

なかだです。

[#38009] Re: Is URI.decode() broken? — "NARUSE, Yui" <naruse@...> 2009/02/14

成瀬です、

[#38016] Re: Is URI.decode() broken? — Fujioka <fuj@...> 2009/02/15

xibbarこと藤岡です。

[#38017] Re: Is URI.decode() broken? — "NARUSE, Yui" <naruse@...> 2009/02/15

成瀬です。

[#38040] Re: Is URI.decode() broken? — akira yamada / やまだあきら <akira@...> 2009/02/17

NARUSE, Yui さんは書きました:

[#38124] Re: Is URI.decode() broken? — "NARUSE, Yui" <naruse@...> 2009/03/03

成瀬です。

[#39214] Re: Is URI.decode() broken? — akira yamada / やまだあきら <akira@...> 2009/09/02

(2009年03月03日 22:45), NARUSE, Yui さんは書きました:

[#39218] Re: Is URI.decode() broken? — "NARUSE, Yui" <naruse@...> 2009/09/02

成瀬です。

[#39236] Re: Is URI.decode() broken? — Tanaka Akira <akr@...> 2009/09/05

In article <4A9E44DD.6050706@airemix.jp>,

[#39242] Re: Is URI.decode() broken? — KOSAKI Motohiro <kosaki.motohiro@...> 2009/09/07

小崎@思いつきを適当に書いてみるテスト

[#39246] Re: Is URI.decode() broken? — Tanaka Akira <akr@...> 2009/09/07

In article <20090907091830.2C7A.A69D9226@jp.fujitsu.com>,

[#38096] 多重代入やメソッド引数の展開でto_aが呼ばれます — nagachika <nagachika00@...>

nagachika と申します。

10 messages 2009/02/26

[#38098] ブロック引数と括弧・引数なしsuper — Shugo Maeda <shugo@...>

前田です。

12 messages 2009/02/27

[ruby-dev:38096] 多重代入やメソッド引数の展開でto_aが呼ばれます

From: nagachika <nagachika00@...>
Date: 2009-02-26 12:07:38 UTC
List: ruby-dev #38096
nagachika と申します。

多重代入の右辺やメソッド呼び出しの引数で * を付けて展開する時に
呼ばれるメソッドは 1.8.7だと to_ary なのですが、
1.9(trunk)だと to_a が呼ばれるようになっているようです。
この変更は意図的なものでしょうか?
ruby-dev,-coreで半年ぶんくらい探してみましたが見つけられませんでした。
to_splat を使うという話題があったという痕跡はありましたけど、
to_splat はやめになったということでよいんでしょうか。

% cat splat_test.rb
class A
  def to_a
    [0, 1, 2]
  end

  def to_ary
    [:a, :b, :c]
  end

  def to_splat # 一応
    ["a", "b", "c"]
  end
end

def meth1(*args)
  args
end

obj = A.new

a, *b = obj
pair = [a, b]
puts "a, *b = obj => #{pair.inspect}"

a, *b = *obj
pair = [a, b]
puts "a, *b = *obj => #{pair.inspect}"

puts "meth1(*obj) => #{meth1(*obj).inspect}"

% ruby-1.8.7 splat_test.rb
a, *b = obj => [:a, [:b, :c]]
a, *b = *obj => [:a, [:b, :c]]
meth1(*obj) => [:a, :b, :c]

% ruby-trunk splat_test.rb
a, *b = obj => [:a, [:b, :c]]
a, *b = *obj => [0, [1, 2]]
meth1(*obj) => [0, 1, 2]

In This Thread

Prev Next