Class: Object
- Inherits:
- BasicObject
- Defined in:
- lib/tracing.rb
Overview
Make the trace method globally available:
Instance Method Summary collapse
Instance Method Details
#trace(*args, &block) ⇒ Object
286 287 288 289 290 291 292 293 294 295 296 |
# File 'lib/tracing.rb', line 286 def trace *args, &block begin # This monstrosity reduces the steps when single-stepping: tracer = (Tracing.tracer ||= Tracing::Tracer.new) and (old_indent, old_nested, old_delayed, enabled = tracer.indent, tracer.nested, tracer.delayed, tracer.show(*args)) block ? yield : (args.size == 0 ? tracer : enabled) ensure tracer.indent, tracer.nested, tracer.delayed = old_indent, old_nested, old_delayed end end |