instance method Module#public

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

メソッドを public に設定します。

引数なしのときは今後このクラスまたはモジュール定義内で新規に定義されるメソッドをどんな形式でも呼び出せるように(public)設定します。

引数が与えられた時には引数によって指定されたメソッドを public に設定します。

可視性については クラス/メソッドの定義/呼び出し制限 を参照して下さい。

[PARAM] name:
String または Symbol を 0 個以上指定します。
[EXCEPTION] NameError:
存在しないメソッド名を指定した場合に発生します。
def foo() 1 end
p foo             # => 1
# the toplevel default is private
p self.foo        # => private method `foo' called for #<Object:0x401c83b0> (NoMethodError)

def bar() 2 end
public :bar       # visibility changed (all access allowed)
p bar             # => 2
p self.bar        # => 2