class OptionParser::ParseError
Base class of exceptions from OptionParser
.
Constants
- Reason
Reason
which caused the error.
Attributes
additional[RW]
args[R]
reason[W]
Public Class Methods
filter_backtrace(array)
click to toggle source
# File lib/optparse.rb, line 2145 def self.filter_backtrace(array) unless $DEBUG array.delete_if(&%r"\A#{Regexp.quote(__FILE__)}:"o.method(:=~)) end array end
new(*args, additional: nil)
click to toggle source
# File lib/optparse.rb, line 2126 def initialize(*args, additional: nil) @additional = additional @arg0, = args @args = args @reason = nil end
Public Instance Methods
inspect()
click to toggle source
# File lib/optparse.rb, line 2172 def inspect "#<#{self.class}: #{args.join(' ')}>" end
message()
click to toggle source
Default stringizing method to emit standard error message.
# File lib/optparse.rb, line 2179 def message "#{reason}: #{args.join(' ')}#{additional[@arg0] if additional}" end
Also aliased as: to_s
reason()
click to toggle source
Returns error reason. Override this for I18N.
# File lib/optparse.rb, line 2168 def reason @reason || self.class::Reason end
recover(argv)
click to toggle source
Pushes back erred argument(s) to argv
.
# File lib/optparse.rb, line 2140 def recover(argv) argv[0, 0] = @args argv end
set_backtrace(array)
click to toggle source
Calls superclass method
Exception#set_backtrace
# File lib/optparse.rb, line 2152 def set_backtrace(array) super(self.class.filter_backtrace(array)) end
set_option(opt, eq)
click to toggle source
# File lib/optparse.rb, line 2156 def set_option(opt, eq) if eq @args[0] = opt else @args.unshift(opt) end self end