class Module private # Alias a module function so that the alias is also # a module function. The typical #alias_method # does not do this. # # module Demo # module_function # def hello # "Hello" # end # end # # Demo.hello #=> Hello # # module Demo # alias_module_function( :hi , :hello ) # end # # Demo.hi #=> Hello # def alias_module_function( new, old ) alias_method( new, old ) module_function( new ) end end # _____ _ # |_ _|__ ___| |_ # | |/ _ \/ __| __| # | | __/\__ \ |_ # |_|\___||___/\__| # =begin test require 'test/unit' class TCModule < Test::Unit::TestCase module MockModule # for alias_module_method def x ; 33 ; end module_function :x alias_module_function :y, :x end def test_alias_module_function assert_equal( 33, MockModule.y ) #assert_equal( 33, @m.send(:y) ) # use send b/c private end end =end