Class: Thread::Backtrace::Location
Instance Method Summary collapse
-
#absolute_path ⇒ Object
Returns the full file path of this frame.
-
#base_label ⇒ Object
Returns the base label of this frame.
-
#inspect ⇒ Object
Returns the same as calling
inspecton the string representation of #to_str. -
#label ⇒ Object
Returns the label of this frame.
-
#lineno ⇒ Object
Returns the line number of this frame.
-
#path ⇒ Object
Returns the file name of this frame.
-
#to_s ⇒ Object
Returns a Kernel#caller style string representing this frame.
Instance Method Details
#absolute_path ⇒ Object
Returns the full file path of this frame.
Same as #path, but includes the absolute path.
287 288 289 290 291 |
# File 'vm_backtrace.c', line 287 static VALUE location_absolute_path_m(VALUE self) { return location_absolute_path(location_ptr(self)); } |
#base_label ⇒ Object
Returns the base label of this frame.
Usually same as #label, without decoration.
224 225 226 227 228 |
# File 'vm_backtrace.c', line 224 static VALUE location_base_label_m(VALUE self) { return location_base_label(location_ptr(self)); } |
#inspect ⇒ Object
Returns the same as calling inspect on the string representation of #to_str
362 363 364 365 366 |
# File 'vm_backtrace.c', line 362 static VALUE location_inspect_m(VALUE self) { return rb_str_inspect(location_to_str(location_ptr(self))); } |
#label ⇒ Object
Returns the label of this frame.
Usually consists of method, class, module, etc names with decoration.
Consider the following example:
def foo
puts caller_locations(0).first.label
1.times do
puts caller_locations(0).first.label
1.times do
puts caller_locations(0).first.label
end
end
end
The result of calling foo is this:
label: foo label: block in foo label: block (2 levels) in foo
197 198 199 200 201 |
# File 'vm_backtrace.c', line 197 static VALUE location_label_m(VALUE self) { return location_label(location_ptr(self)); } |
#lineno ⇒ Object
Returns the line number of this frame.
For example, using caller_locations.rb from Thread::Backtrace::Location
loc = c(0..1).first loc.lineno #=> 2
148 149 150 151 152 |
# File 'vm_backtrace.c', line 148 static VALUE location_lineno_m(VALUE self) { return INT2FIX(location_lineno(location_ptr(self))); } |
#path ⇒ Object
Returns the file name of this frame.
For example, using caller_locations.rb from Thread::Backtrace::Location
loc = c(0..1).first loc.path #=> caller_locations.rb
257 258 259 260 261 |
# File 'vm_backtrace.c', line 257 static VALUE location_path_m(VALUE self) { return location_path(location_ptr(self)); } |
#to_s ⇒ Object
Returns a Kernel#caller style string representing this frame.
352 353 354 355 356 |
# File 'vm_backtrace.c', line 352 static VALUE location_to_str_m(VALUE self) { return location_to_str(location_ptr(self)); } |