lib/tracing.rb in tracing-2.0.4 vs lib/tracing.rb in tracing-2.0.5
- old
+ new
@@ -47,11 +47,11 @@
(class << self; self; end).class_eval do
attr_accessor :tracer
end
class Tracer
- attr_accessor :indent, :nested
+ attr_accessor :indent, :nested, :delayed
def initialize
reinitialize
end
@@ -67,15 +67,15 @@
end
end
def trace(*args, &block)
begin
- old_indent, old_nested, enabled = @indent, @nested, show(*args)
+ old_indent, old_nested, old_delayed, enabled = @indent, @nested, @delayed, show(*args)
# This monstrosity reduces the steps when single-stepping:
block ? yield : (args.size == 0 ? self : enabled)
ensure
- @indent, @nested = old_indent, old_nested
+ @indent, @nested, @delayed = old_indent, old_nested, old_delayed
end
end
def available_keys
@available.keys
@@ -283,14 +283,14 @@
class Object
def trace *args, &block
begin
# This monstrosity reduces the steps when single-stepping:
tracer = (Tracing.tracer ||= Tracing::Tracer.new) and
- (old_indent, old_nested, enabled = tracer.indent, tracer.nested, tracer.show(*args))
+ (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 = old_indent, old_nested
+ tracer.indent, tracer.nested, tracer.delayed = old_indent, old_nested, old_delayed
end
end
end
# Load the ruby debugger before everything else, if requested