lib/tracing.rb in tracing-2.0.0 vs lib/tracing.rb in tracing-2.0.1
- old
+ new
@@ -65,15 +65,15 @@
end
end
def trace(*args, &block)
begin
- old_indent, old_nested, old_delayed, enabled = @indent, @nested, @delayed, show(*args)
+ old_indent, old_nested, enabled = @indent, @nested, show(*args)
# This monstrosity reduces the steps when single-stepping:
block ? yield : (args.size == 0 ? self : enabled)
ensure
- @indent, @nested, @delayed = old_indent, old_nested, old_delayed
+ @indent, @nested = old_indent, old_nested
end
end
def available_keys
@available.keys
@@ -213,17 +213,19 @@
' '*@indent +
args.
map{|a| a.respond_to?(:call) ? a.call : a}.
join(' ')
- if @delayed == true
- @delayed = message # Arrange to display this message later, if necessary
- elsif @delayed
- display key, @delayed # Display a delayed message, then the current one
- @delayed = nil
- display key, message
+ if @delay
+ @delayed = [@delayed, message].compact*"\n" # Arrange to display this message later, if necessary
+ @delay = false
else
+ if @delayed
+ display key, @delayed # Display a delayed message, then the current one
+ @delayed = nil
+ @delay = false
+ end
display key, message
end
end
@indent += (enabled_prefix ? 1 : 0)
!!enabled_prefix
@@ -237,10 +239,10 @@
case s = control.to_s
when /!\Z/ # Enable all nested trace calls
nested = true
s.sub(/!\Z/, '').to_sym
when /\?\Z/ # Delay this message until a nested active trace
- @delayed = true
+ @delay = true
s.sub(/\?\Z/, '').to_sym
else
control
end
else