instance method Module#deprecate_constant

deprecate_constant(*name) -> self[permalink][rdoc][edit]

name で指定した定数を deprecate に設定します。 deprecate に設定した定数を参照すると警告メッセージが表示されます。

Ruby 2.7.2 から Warning[:deprecated] のデフォルト値が false に変更になったため、デフォルトでは警告が表示されません。

コマンドラインオプション(詳細はRubyの起動/コマンドラインオプション参照)で、「-w」か「-W2」などを指定するか、実行中に「Warning[:deprecated] = true」で変更すると表示されるようになります。

「$VERBOSE = true」は「Warning[:deprecated]」に影響しないため、表示されるかどうかは変わりません。

[PARAM] name:
0 個以上の StringSymbol を指定します。
[EXCEPTION] NameError:
存在しない定数を指定した場合に発生します。
[RETURN]
self を返します。


FOO = 123
Object.deprecate_constant(:FOO) # => Object

FOO
# warning: constant ::FOO is deprecated
# => 123

Object.deprecate_constant(:BAR)
# NameError: constant Object::BAR not defined