Method: YARD::Handlers::Ruby::ModuleFunctionHandler#process

Defined in:
lib/yard/handlers/ruby/module_function_handler.rb

#processvoid

This method returns an undefined value.

Main processing callback


7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/yard/handlers/ruby/module_function_handler.rb', line 7

process do
  return if (ident = statement.jump(:ident)) == statement
  case statement.type
  when :var_ref, :vcall
    self.scope = :module
  when :fcall, :command
    statement[1].traverse do |node|
      case node.type
      when :symbol; name = node.first.source
      when :string_content; name = node.source
      else next
      end
      instance_method = MethodObject.new(namespace, name)
      class_method = MethodObject.new(namespace, name, :module)
      instance_method.copy_to(class_method)
      class_method.visibility = :public
    end
  end
end