# File lib/rake/task_manager.rb, line 23
23:     def define_task(task_class, *args, &block)
24:       task_name, arg_names, deps = resolve_args(args)
25:       task_name = task_class.scope_name(@scope, task_name)
26:       deps = [deps] unless deps.respond_to?(:to_ary)
27:       deps = deps.collect {|d| d.to_s }
28:       task = intern(task_class, task_name)
29:       task.set_arg_names(arg_names) unless arg_names.empty?
30:       if Rake::TaskManager.record_task_metadata
31:         add_location(task)
32:         task.add_description(get_description(task))
33:       end
34:       task.enhance(deps, &block)
35:     end