def parse(argv)
      parser, options = parse_main(argv)

      # Options that are mutually-exclusive with everything else.
      options = {:help    => true} if options[:help]
      options = {:version => true} if options[:version]

      validate_options!(options)

      @options = options
      @help_text = parser.to_s

      self
    end
def parse(argv)
      parser, options = parse_main(argv)

      # Options that are mutually-exclusive with everything else.
      options = {:help    => true} if options[:help]
      options = {:version => true} if options[:version]

      validate_options!(options)

      @options = options
      @help_text = parser.to_s

      self
    end
Parses an Array of command-line arguments into an equivalent Hash.

 The results of this can be used to control the behavior of the rest
 of the library.

 @params argv [Array] An array of command-line arguments, e.g. +ARGV+.
 @return [Hash] A Hash containing data used to control Inq's behavior.