module Rake::TaskManager

def resolve_args_with_dependencies(args, hash) # :nodoc:

:nodoc:

task :t, [a] => [:d]
task :t => [:d]

The patterns recognized by this argument resolving function are:

dependencies declared.
Resolve task arguments for a task or rule when there are
def resolve_args_with_dependencies(args, hash) # :nodoc:
  fail "Task Argument Error" if hash.size != 1
  key, value = hash.map { |k, v| [k,v] }.first
  if args.empty?
    task_name = key
    arg_names = []
    deps = value
  else
    task_name = args.shift
    arg_names = key
    deps = value
  end
  deps = [deps] unless deps.respond_to?(:to_ary)
  [task_name, arg_names, deps]
end