415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
|
# File 'lib/main/parameter.rb', line 415
def parse_arguments argv, params=nil
params ||= select{|p| p.type == :argument}
params.each do |p|
if p.arity >= 0
p.arity.times do
break if argv.empty?
value = argv.shift
p.add_value value
end
else
arity = p.arity.abs - 1
arity.times do
break if argv.empty?
value = argv.shift
p.add_value value
end
argv.size.times do
value = argv.shift
p.add_value value
end
end
end
=begin
params.each do |p|
p.setup!
end
=end
end
|