rubyのmoduleで関数を呼び出そうとした時、普通にclassの中に関数を定義するだけでは、外側から、moduleの中の関数を呼び出すことができません。module_function を使って、関数をmodule_functionへ定義すること、moduleの中の関数をmoduleの外側から使うことが可能になります。
irb(main):050:0> module Mod irb(main):051:1> def hello irb(main):052:2> puts 'hello!' irb(main):053:2> end irb(main):054:1> irb(main):055:1> module_function :hello irb(main):056:1> end => Mod irb(main):057:0> Mod::hello hello! => nil