Module Arguable
In: optparse.rb

Extends command line arguments array (ARGV) to parse itself.

Methods

extend_object   getopts   new   options   options=   order!   parse!   permute!  

Public Class methods

Initializes instance variable.

[Source]

# File optparse.rb, line 1759
    def self.extend_object(obj)
      super
      obj.instance_eval {@optparse = nil}
    end

[Source]

# File optparse.rb, line 1763
    def initialize(*args)
      super
      @optparse = nil
    end

Public Instance methods

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

[Source]

# 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.

[Source]

# 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.

[Source]

# 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.

[Source]

# 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.

[Source]

# File optparse.rb, line 1739
    def parse!() options.parse!(self) end

Parses self destructively in permutation mode and returns self containing the rest arguments left unparsed.

[Source]

# File optparse.rb, line 1733
    def permute!() options.permute!(self) end

[Validate]

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.