Exception: OptionParser::ParseError
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Subclasses:
|
|
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
RuntimeError
|
|
Instance Chain:
self,
RuntimeError
|
|
Inherits: |
RuntimeError
|
Defined in: | lib/optparse.rb |
Overview
Base class of exceptions from ::OptionParser
.
Constant Summary
-
Reason =
Reason
which caused the error.'parse error'
Class Method Summary
Instance Attribute Summary
- #additional rw
- #args readonly
-
#reason
rw
Returns error reason.
- #reason=(value) rw
Instance Method Summary
- #inspect
-
#message
(also: #to_s)
Default stringizing method to emit standard error message.
-
#recover(argv)
Pushes back erred argument(s) to
argv
. - #set_backtrace(array)
- #set_option(opt, eq)
-
#to_s
Alias for #message.
Constructor Details
.new(*args, additional: nil) ⇒ ParseError
# File 'lib/optparse.rb', line 2117
def initialize(*args, additional: nil) @additional = additional @arg0, = args @args = args @reason = nil end
Class Method Details
.filter_backtrace(array)
[ GitHub ]# File 'lib/optparse.rb', line 2136
def self.filter_backtrace(array) unless $DEBUG array.delete_if(&%r"\A#{Regexp.quote(__FILE__)}:"o.method(:=~)) end array end
Instance Attribute Details
#additional (rw)
[ GitHub ]# File 'lib/optparse.rb', line 2126
attr_accessor :additional
#args (readonly)
[ GitHub ]# File 'lib/optparse.rb', line 2124
attr_reader :args
#reason (rw)
Returns error reason. Override this for I18N.
# File 'lib/optparse.rb', line 2159
def reason @reason || self.class::Reason end
#reason=(value) (rw)
[ GitHub ]# File 'lib/optparse.rb', line 2125
attr_writer :reason
Instance Method Details
#inspect
[ GitHub ]# File 'lib/optparse.rb', line 2163
def inspect "#<#{self.class}: #{args.join(' ')}>" end
#message Also known as: #to_s
Default stringizing method to emit standard error message.
# File 'lib/optparse.rb', line 2170
def "#{reason}: #{args.join(' ')}#{additional[@arg0] if additional}" end
#recover(argv)
Pushes back erred argument(s) to argv
.
# File 'lib/optparse.rb', line 2131
def recover(argv) argv[0, 0] = @args argv end
#set_backtrace(array)
[ GitHub ]# File 'lib/optparse.rb', line 2143
def set_backtrace(array) super(self.class.filter_backtrace(array)) end
#set_option(opt, eq)
[ GitHub ]# File 'lib/optparse.rb', line 2147
def set_option(opt, eq) if eq @args[0] = opt else @args.unshift(opt) end self end
#to_s
Alias for #message.
# File 'lib/optparse.rb', line 2174
alias to_s