In Ruby, private method can be defined in module:
module Hoge private def p_method puts 1 end end class Foo include Hoge end
Try it on IRB.
irb(main)> Foo.new.p_method NoMethodError: private method `p_method' called for #<Foo:0x007fd660b9de88> from (irb):13 from /Users/toshi/.rbenv/versions/2.2.4/bin/irb:11:in `<main>'
As expected, private method defined in
Hoge module cannot be called from