--- !ruby/object:RI::MethodDescription 
aliases: []

block_params: 
comment: 
- !ruby/struct:SM::Flow::P 
  body: Creates module functions for the named methods. These functions may be called with the module as a receiver, and also become available as instance methods to classes that mix in the module. Module functions are copies of the original, and so may be changed independently. The instance-method versions are made private. If used with no arguments, subsequently defined methods become module functions.
- !ruby/struct:SM::Flow::VERB 
  body: "   module Mod\n     def one\n       &quot;This is one&quot;\n     end\n     module_function :one\n   end\n   class Cls\n     include Mod\n     def callOne\n       one\n     end\n   end\n   Mod.one     #=&gt; &quot;This is one&quot;\n   c = Cls.new\n   c.callOne   #=&gt; &quot;This is one&quot;\n   module Mod\n     def one\n       &quot;This is the new one&quot;\n     end\n   end\n   Mod.one     #=&gt; &quot;This is one&quot;\n   c.callOne   #=&gt; &quot;This is the new one&quot;\n"
full_name: Module#module_function
is_singleton: false
name: module_function
params: |
  module_function(symbol, ...)    => self

visibility: public
