| Module | Arguable |
| In: |
optparse.rb
|
Extends command line arguments array (ARGV) to parse itself.
Initializes instance variable.
# File optparse.rb, line 1759 def self.extend_object(obj) super obj.instance_eval {@optparse = nil} end
Substitution of getopts is possible as follows. Also see OptionParser#getopts.
def getopts(*args)
($OPT = ARGV.getopts(*args)).each do |opt, val|
eval "$OPT_#{opt.gsub(/[^A-Za-z0-9_]/, '_')} = val"
end
rescue OptionParser::ParseError
end
# File optparse.rb, line 1752 def getopts(*args) options.getopts(self, *args) end
Actual OptionParser object, automatically created if nonexistent.
If called with a block, yields the OptionParser object and returns the result of the block. If an OptionParser::ParseError exception occurs in the block, it is rescued, a error message printed to STDERR and nil returned.
# File optparse.rb, line 1711 def options @optparse ||= OptionParser.new @optparse.default_argv = self block_given? or return @optparse begin yield @optparse rescue ParseError @optparse.warn $! nil end end
Sets OptionParser object, when opt is false or nil, methods OptionParser::Arguable#options and OptionParser::Arguable#options= are undefined. Thus, there is no ways to access the OptionParser object via the receiver object.
# File optparse.rb, line 1694 def options=(opt) unless @optparse = opt class << self undef_method(:options) undef_method(:options=) end end end
Parses self destructively in order and returns self containing the rest arguments left unparsed.
# File optparse.rb, line 1727 def order!(&blk) options.order!(self, &blk) end
Parses self destructively and returns self containing the rest arguments left unparsed.
# File optparse.rb, line 1739 def parse!() options.parse!(self) end
ruby-doc.org is hosted and maintained by James Britt and Happy Camper Studios, a Ruby application development company in Phoenix, Arizona. The site was created in 2002 as part of the Ruby Documentation Project to promote the Ruby language and to help other Ruby hackers.
Documentation content on ruby-doc.org is provided by remarkable members of the Ruby community.
For more information on the Ruby programming language, visit ruby-lang.org.
Want to help improve Ruby's API docs? See Ruby Documentation Guidelines.