class Bundler::Thor

def create_command(meth) #:nodoc:

:nodoc:
def create_command(meth) #:nodoc:
  @usage ||= nil
  @desc ||= nil
  @long_desc ||= nil
  @long_desc_wrap ||= nil
  @hide ||= nil
  if @usage && @desc
    base_class = @hide ? Bundler::Thor::HiddenCommand : Bundler::Thor::Command
    relations = {exclusive_option_names: method_exclusive_option_names,
      at_least_one_option_names: method_at_least_one_option_names}
    commands[meth] = base_class.new(meth, @desc, @long_desc, @long_desc_wrap, @usage, method_options, relations)
    @usage, @desc, @long_desc, @long_desc_wrap, @method_options, @hide = nil
    @method_exclusive_option_names, @method_at_least_one_option_names = nil
    true
  elsif all_commands[meth] || meth == "method_missing"
    true
  else
    puts "[WARNING] Attempted to create command #{meth.inspect} without usage or description. " \
         "Call desc if you want this method to be available as command or declare it inside a " \
         "no_commands{} block. Invoked from #{caller[1].inspect}."
    false
  end
end