[前][次][番号順一覧][スレッド一覧]

ruby-reference-manual:3215

From: "pypypy567 (py _)" <redmine@r...>
Date: Sat, 25 Aug 2012 16:47:08 +0900
Subject: [ruby-reference-manual:3215] [るりまプロジェクト - Bug #3470] bc-methods で定数の表示が正しくない


Issue #3470 has been updated by pypypy567 (py _).

File bc-methods.rb.patch added
File _bc-methods.rb.patch added

見てみました。
これ多分昔は対象のモジュール/クラスに直接定義された定数名だけを得る手軽な方法がなかったことが原因ですね。
こことか参照: http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/29989
代替手段として自クラスの constants から親たちのを除いていますが、それだと親が持ってるのと同名の定数が見えません。
1.9系の YAML::Store::EMPTY_MARSHAL_CHECKSUM とかはこのケースです。
1.9系では素直に inherit フラグを true に設定すればいいと思います。(bc-methods.rb.patch)

1.8系はどうなんでしょう?
一応1.8系でも使えそうな方法はあります。remove_const してみることです。
そうするパッチも書いてみました。(_bc-methods.rb.patch)
とりあえず僕の環境では意図通り動いてる気がします。
でも多分有ったとしてもものすごくレアケースですよね。

----------------------------------------
Bug #3470: bc-methods で定数の表示が正しくない
https://bugs.ruby-lang.org/issues/3470#change-29030

Author: okkez (okkez _)
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: 
reporter: 
ruby_version: 


=begin
 以下のようになっている。
 実際には YAML::Store の定数は 1.9.1 以降にも存在している。
 
 $ bc-methods -ryaml/store YAML::Store
                                                      180 181 182 183 184 185 186 187 187188dev191p427192dev193dev
 YAML::Store#dump                                       -   -   o   o   o   o   o   o   o   o   o   o   o
 YAML::Store#empty_marshal_checksum                     -   -   -   -   -   -   -   o   o   o   o   o   o
 YAML::Store#empty_marshal_data                         -   -   -   -   -   -   -   o   o   o   o   o   o
 YAML::Store#load                                       -   -   o   o   o   o   o   o   o   o   o   o   o
 YAML::Store#load_file                                  -   -   o   o   o   o   o   -   -   -   -   -   -
 YAML::Store#marshal_dump_supports_canonical_option?    -   -   -   -   -   -   -   o   o   o   o   o   o
 YAML::Store#transaction                                o   o   -   -   -   -   -   -   -   -   -   -   -
 YAML::Store::EMPTY_MARSHAL_CHECKSUM                    -   -   -   -   -   -   -   o   o   o   -   -   -
 YAML::Store::EMPTY_MARSHAL_DATA                        -   -   -   -   -   -   -   o   o   o   -   -   -
=end



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

--
ML: ruby-reference-manual@m...
Info: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]