optparse icon indicating copy to clipboard operation
optparse copied to clipboard

Error at 'parse!' method with 'into' keyword

Open s7pdragon opened this issue 1 year ago • 0 comments

Good moning.

I'm thankful for this gem.


After updating to ver 0.5.0,

When option parameter type set as Array,

Error raised at 'parse!' method with 'into:' keyword.

See below

irb(main):001> require 'optparse'
=> true
irb(main):002> options={}
=> {}
irb(main):003> opt= OptionParser.new
=> #<OptionParser>
irb(main):004> opt.on('-a=VAL',Array,'test Array parameter'){|v| v}
=> #<OptionParser: ((Required:(irb):4: -a))>
irb(main):005> opt.parse!(["test", "-a", "b,c,d", "hoge"], into: options)
/usr/lib64/ruby/gems/3.2.0/gems/optparse-0.5.0/lib/optparse.rb:1702:in `block in order!': wrong number of arguments (given 4, expected 2) (ArgumentError)
	from /usr/lib64/ruby/gems/3.2.0/gems/optparse-0.5.0/lib/optparse.rb:1806:in `callback!'
	from /usr/lib64/ruby/gems/3.2.0/gems/optparse-0.5.0/lib/optparse.rb:1773:in `block in parse_in_order'
	from /usr/lib64/ruby/gems/3.2.0/gems/optparse-0.5.0/lib/optparse.rb:1709:in `catch'
	from /usr/lib64/ruby/gems/3.2.0/gems/optparse-0.5.0/lib/optparse.rb:1709:in `parse_in_order'
	from /usr/lib64/ruby/gems/3.2.0/gems/optparse-0.5.0/lib/optparse.rb:1703:in `order!'
	from /usr/lib64/ruby/gems/3.2.0/gems/optparse-0.5.0/lib/optparse.rb:1828:in `permute!'
	from /usr/lib64/ruby/gems/3.2.0/gems/optparse-0.5.0/lib/optparse.rb:1853:in `parse!'
	from (irb):5:in `<main>'
	from /usr/lib64/ruby/gems/3.2.0/gems/irb-1.13.2/exe/irb:9:in `<top (required)>'
	from /usr/bin/irb:25:in `load'
	from /usr/bin/irb:25:in `<main>'

s7pdragon avatar Jun 22 '24 23:06 s7pdragon