Class: OptionParser::Switch::PlacedArgument

Inherits:
OptionParser::Switch show all
Defined in:
lib/optparse.rb

Overview

Switch that takes an argument, which does not begin with '-'.

Instance Attribute Summary

Attributes inherited from OptionParser::Switch

#arg, #block, #conv, #desc, #long, #pattern, #short

Instance Method Summary collapse

Methods inherited from OptionParser::Switch

#add_banner, #compsys, guess, incompatible_argument_styles, #initialize, #match_nonswitch?, pattern, #summarize, #switch_name

Constructor Details

This class inherits a constructor from OptionParser::Switch

Instance Method Details

#parse(arg, argv, &error) ⇒ Object

Returns nil if argument is not present or begins with '-'.


523
524
525
526
527
528
529
530
531
532
533
534
535
# File 'lib/optparse.rb', line 523

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