Method: Fiber#backtrace_locations
- Defined in:
- cont.c
#backtrace_locations ⇒ Array #backtrace_locations(start) ⇒ Array #backtrace_locations(start, count) ⇒ Array #backtrace_locations(start..end) ⇒ Array
Like #backtrace, but returns each line of the execution stack as a Thread::Backtrace::Location. Accepts the same arguments as #backtrace.
f = Fiber.new { Fiber.yield }
f.resume
loc = f.backtrace_locations.first
loc.label #=> "yield"
loc.path #=> "test.rb"
loc.lineno #=> 1
3013 3014 3015 3016 3017 |
# File 'cont.c', line 3013 static VALUE rb_fiber_backtrace_locations(int argc, VALUE *argv, VALUE fiber) { return rb_vm_backtrace_locations(argc, argv, &fiber_ptr(fiber)->cont.saved_ec); } |