Exception: Web::TemplateError
Instance Attribute Summary collapse
-
#original_error ⇒ Object
Returns the value of attribute original_error.
-
#scriptname ⇒ Object
Returns the value of attribute scriptname.
Instance Method Summary collapse
-
#initialize(error, scriptname) ⇒ TemplateError
constructor
A new instance of TemplateError.
- #trimmed_original ⇒ Object
Methods inherited from Exception
#rbw_backtrace, #rbw_backtrace_html, #rbw_html, #rbw_to_s
Constructor Details
#initialize(error, scriptname) ⇒ TemplateError
Returns a new instance of TemplateError.
12 13 14 15 16 |
# File 'lib/web/load.rb', line 12 def initialize(error, scriptname) self.original_error = error self.scriptname = scriptname super(error.to_s) end |
Instance Attribute Details
#original_error ⇒ Object
Returns the value of attribute original_error.
11 12 13 |
# File 'lib/web/load.rb', line 11 def original_error @original_error end |
#scriptname ⇒ Object
Returns the value of attribute scriptname.
11 12 13 |
# File 'lib/web/load.rb', line 11 def scriptname @scriptname end |
Instance Method Details
#trimmed_original ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/web/load.rb', line 18 def trimmed_original call_index = original_error.backtrace.length original_error.backtrace.each_with_index do |line, i| if line =~ /web\/load.rb.*in `call'/ call_index = i + 1 break end end trace = original_error.backtrace[call_index..-1] # I want to set the script name, but I can't get it to work #trace[-1] = trace[-1].gsub(/^\(eval\):/, scriptname + ":") original_error.set_backtrace( trace ) original_error end |