[#38392] Enumerable#gather_each — Tanaka Akira <akr@...>

ときに、複数行をまとめて扱いたいことがあります。

47 messages 2009/05/09
[#38399] Re: Enumerable#gather_each — "Akinori MUSHA" <knu@...> 2009/05/09

At Sat, 9 May 2009 15:30:20 +0900,

[#38405] Re: Enumerable#gather_each — Tanaka Akira <akr@...> 2009/05/10

In article <86r5yy2nrg.knu@iDaemons.org>,

[#38417] Re: Enumerable#gather_each — "Akinori MUSHA" <knu@...> 2009/05/10

At Sun, 10 May 2009 10:08:47 +0900,

[#38394] Re: Enumerable#gather_each — ujihisa <ujihisa@...> 2009/05/09

ujihisaと申します。

[#38400] Re: Enumerable#gather_each — Yukihiro Matsumoto <matz@...> 2009/05/09

まつもと ゆきひろです

[#38524] [Bug #1503] -Kuをつけた時、/[#{s}]/n と Regexp.new("[#{s}]",nil,"n") で実行結果が異なる — sinnichi eguchi <redmine@...>

Bug #1503: -Kuをつけた時、/[#{s}]/n と Regexp.new("[#{s}]",nil,"n") で実行結果が異なる

8 messages 2009/05/22

[ruby-dev:38554] [Bug #1534] Inconsistency Between Struct#to_s and Struct#inspect

From: "ujihisa ." <redmine@...>
Date: 2009-05-28 22:33:49 UTC
List: ruby-dev #38554
Bug #1534: Inconsistency Between Struct#to_s and Struct#inspect
http://redmine.ruby-lang.org/issues/show/1534

起票者: ujihisa .
ステータス: Open, 優先度: Normal
ruby -v: ruby 1.9.2dev (2009-05-28 trunk 23601) [i386-darwin9.7.0]

http://redmine.ruby-lang.org/issues/show/1427
http://redmine.ruby-lang.org/issues/show/1533
の二つと同じ問題をStructで発見しました。
ruby 1.9では通常Struct#to_sとStruct#inspectは同じ文字列を返しますが、自己再帰する構造体に対しては異なる結果を返しています。

    # ruby 1.9.2dev (2009-05-28 trunk 23601) [i386-darwin9.7.0]
    t = Struct.new('A', :a).new(nil)
    t.a = t
    puts t.to_s
    #=> <struct Struct::A a=#<struct Struct::A a=#<struct Struct::A:...>>>
    puts t.inspect
    #=> <struct Struct::A a=#<struct Struct::A:...>>

添付のパッチでto_sの結果がinspectと同じになります。

なお、似たような実装をしているものがないかgrepしたところ, proc.c, time.c, ext/dl/cfunc.cが該当しました。が、これらは自己再帰的構造を持ち得ないため大丈夫と思います。


----------------------------------------
http://redmine.ruby-lang.org

In This Thread

Prev Next