Maintenance Ruby 3.3 gets fixes, but no new features. Switch to Ruby 4.0 →
instance method
OptionParser::Switch::PlacedArgument#parse
parse(arg, argv, &error)
lib/optparse.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.3.0/lib/optparse.rb, line 775
def parse(arg, argv, &error)
if !(val = arg) and (argv.empty? or /\A-./ =~ (val = argv[0]))
return nil, block, nil
end
opt = (val = parse_arg(val, &error))[1]
val = conv_arg(*val)
if opt and !arg
argv.shift
else
val[0] = nil
end
val
end
Returns nil if argument is not present or begins with ‘-’ and is not ‘-’.