class Mattock::YARDExtensions::DefineHandler

Public Instance Methods

mattock_defining?(obj, method) click to toggle source
# File lib/calibrate/yard-extensions.rb, line 9
def mattock_defining?(obj, method)
  check_list = obj.inheritance_tree
  until check_list.empty?
    check_list.each do |co|
      return true if [:CascadingDefinition, :Configurable, :Tasklib, :TaskLib].include? co.name and method == "define"
      return true if [:TaskMixin, :Task, :FileTask, :MultiTask].include? co.name and method == "action"
    end
    check_list = (check_list.find_all{|co| co.respond_to?(:mixins)}||[]).map{|co| co.mixins}.flatten
  end
end
process() click to toggle source
# File lib/calibrate/yard-extensions.rb, line 28
def process
  return unless mattock_defining?(namespace, statement[0][0])
  (root[:tasklibs] ||= []) << namespace
  namespace[:task_definition] = statement[2]
end
root() click to toggle source
# File lib/calibrate/yard-extensions.rb, line 20
def root
  ns = namespace
  until ns.root?
    ns = ns.namespace
  end
  ns
end