[#10793] 今度こそ (patch of the ruby-1.4.6 for NT4.0&VC4.0 on DEC Alpha.) — kou@...1609.sip.eee.yamaguchi-u.ac.jp (Koichi Okada)

岡田です。

10 messages 2000/09/01

[#10920] SIGINT on windows — "Nobuyoshi.Nakada" <nobu.nakada@...>

なかだです。

17 messages 2000/09/14
[#11077] Re: SIGINT on windows — matz@... (Yukihiro Matsumoto) 2000/09/27

まつもと ゆきひろです

[#10944] dummy DLL on Windows — "Nobuyoshi.Nakada" <nobu.nakada@...>

なかだです。

19 messages 2000/09/18
[#10955] Re: dummy DLL on Windows — WATANABE Hirofumi <eban@...> 2000/09/19

わたなべです.

[#10963] Re: dummy DLL on Windows — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/09/19

なかだです。

[#10964] Re: dummy DLL on Windows — WATANABE Hirofumi <eban@...> 2000/09/19

わたなべです.

[#10978] [PATCH] require in require — "Nobuyoshi.Nakada" <nobu.nakada@...>

なかだです。

15 messages 2000/09/20

[#10985] httphead.rb proxy version problem — Katsuyuki Komatsu <komatsu@...>

小松です.

16 messages 2000/09/20
[#10989] Re: httphead.rb proxy version problem — Minero Aoki <aamine@...> 2000/09/20

あおきです。

[ruby-dev:10943] Passing []/String as argument

From: Jun Adachi <adachi@...>
Date: 2000-09-18 09:49:11 UTC
List: ruby-dev #10943
安達@沖データと申します。

1.6に向けて皆さん忙しいことと思いますが、よろしければ教えてください。

ruby 1.4.6 (2000-08-16) [i386-freebsdelf3.4]のリリース版(つまりパッチ
無し)において、次のコードの実行結果が妙です。現時点では仕様でしょうか?

最初の例は、問題ありません。
2番目の例は、空の配列が無視されています。
3番目の例は、改行を含んだ文字列が、行毎に別の引数として渡されています。

#まぁ、もっとも素直にclass Aの方でclass Hに委譲(delegate)すれば、問題
#は起きないので、あまり問題としては大きくはないのだと思いますが。
--
class H
  def initialize
     @h = Hash.new
  end
 
  def []=(*args)
    val = args.pop
    args.each { | a |
      @h[a] = val
    }
  end
end
 
class A
  def initialize
    @h = H.new
  end

  def []=(*args)
    val = args.pop
    @h[*args] = val
  end
end

aa = A.new
aa['abc', 'def'] = '*kkk'
p aa
aa['xxx', 'yyy'] = []
p aa
aa['uuu', 'vvv'] = "123\n456\n789"
p aa
--
--[実行結果]----------------------------------------------------------------
#<A: @h=#<H: @h={"def"=>"*kkk", "abc"=>"*kkk"}>>
#<A: @h=#<H: @h={"def"=>"*kkk", "xxx"=>"yyy", "abc"=>"*kkk"}>>
#<A: @h=#<H: @h={"123\n"=>"789", "def"=>"*kkk", "456\n"=>"789",\
"vvv"=>"789", "xxx"=>"yyy", "abc"=>"*kkk", "uuu"=>"789"}>>
--[end]---------------------------------------------------------------------
--
*------*				adachi@okidata.co.jp
|人∧鷲|				沖データ ソフトウェア開発部
| <女> |				安達 淳
|牛∨獅|
*------*

In This Thread

Prev Next