method

new

ruby latest stable - Class: Bundler::Thor::Argument

Method not available on this version

This method is only available on newer versions. The first available version (v2_6_3) is shown here.

new(name, options = {})
public

No documentation available.

# File lib/bundler/vendor/thor/lib/thor/parser/argument.rb, line 8
    def initialize(name, options = {})
      class_name = self.class.name.split("::").last

      type = options[:type]

      raise ArgumentError, "#{class_name} name can't be nil."                         if name.nil?
      raise ArgumentError, "Type :#{type} is not valid for #{class_name.downcase}s."  if type && !valid_type?(type)

      @name        = name.to_s
      @description = options[:desc]
      @required    = options.key?(:required) ? options[:required] : true
      @type        = (type || :string).to_sym
      @default     = options[:default]
      @banner      = options[:banner] || default_banner
      @enum        = options[:enum]

      validate! # Trigger specific validations
    end