Module_function Extend Self

Posted by on Sunday, February 3, 2019 Tags:   1 minute read

dule_function と密接に関連するモジュール関数について改めて確認してみました。

モジュール内で定義されたメソッド(以下モジュールメソッドと呼びます)は、そのモジュール自身の内部や、モジュールを include した場所(クラスなど)で呼び出すことができます。

しかしモジュールメソッドは、そのままではモジュールの外部に公開されていない(デフォルトで private)ので、モジュール名.メソッド名の形で外部から呼び出すことはできません。

モジュールメソッドを外部に公開するには module_function が必要です。公開したいモジュールメソッドはシンボルで与えます。

https://qiita.com/mtsmfm/items/81823d40cf1f520cdeb5
https://www.ruby-forum.com/t/class-self-vs-extend-self/220944/2
https://qiita.com/ionis_h/items/5f26248ea4e154cce424

edu.goorm.io