errors/backtrace_method.rb
tests/_examples/errors/backtrace_method.rb in the metorex repository.
# Backtrace method example
class ErrorDemo
def outer
self.middle
end
def middle
self.inner
end
def inner
raise("Error in inner method")
end
end
begin
demo = ErrorDemo.new
demo.outer
rescue => e
puts "Caught: #{e.message}"
trace = e.backtrace
puts "Backtrace array length: #{trace.length}"
# Print first few frames
if trace.length > 0
puts "First frame: #{trace[0]}"
end
end
Output:
Caught: Error in inner method
Backtrace array length: 4
First frame: tests/_examples/errors/backtrace_method.rb:13:in 'ErrorDemo#inner'