# File lib/thor/task.rb, line 35 def run(instance, args=[]) raise UndefinedTaskError, "the '#{name}' task of #{instance.class} is private" unless public_method?(instance) instance.send(name, *args) rescue ArgumentError => e parse_argument_error(instance, e, caller) rescue NoMethodError => e parse_no_method_error(instance, e) end