Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Moduleクラス > private_constant

instance method Module#private_constant

private_constant(*name) -> self[permalink][rdoc]

name で指定した定数の可視性を private に変更します。

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

[SEE_ALSO] Module#public_constant, Object#untrusted?



module Foo
  BAR = 'bar'
  class Baz; end
  QUX = 'qux'
  class Quux; end

  private_constant :QUX
  private_constant :Quux
end

Foo::BAR  # => "bar"
Foo::Baz  # => Foo::Baz
Foo::QUX  # => NameError: private constant Foo::QUX referenced
Foo::Quux # => NameError: private constant Foo::Quux referenced