OptionParser возвращает bool вместо аргумента?

Когда я запускаю этот образец из OptionParser документация:

require 'optparse'
options = {}
OptionParser.new do |opts|
    opts.banner = "Usage: example.rb [options]"
    opts.on("-v", "--[no-]verbose", "Run verbosely") do |v|
        options[:verbose] = v
    end
end.parse!
p options
p ARGV

и введите: ruby test.rb -v 100, он вернет:

{:verbose=>true}
["100"]

Разве verbose не должно быть 100, а не логическое значение?

У меня есть понятия не имею об этом, есть ли у кого-нибудь совет?

19
задан The Unfun Cat 17 December 2014 в 05:20
поделиться