tracing 2.0.2 → 2.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b7ab1563e57a36b3d879f2f51282858be3c1e644
4
- data.tar.gz: b0c9907fe1e8fc86e217a7f0d2928c7ba07f615c
3
+ metadata.gz: 84d4d4f8efb01206dd0ee3dbb63532fa393e52df
4
+ data.tar.gz: 340bc352b682059e1ddbb64c8acd890ad07ebec1
5
5
  SHA512:
6
- metadata.gz: 77fe5b43f0b4b6d450f67c20fb6c3d15919b2b3f08a13cf6a2d43f8a7dfd1058e5ccd14bf53888eb27b43daffb9831e1dc7c307982913682a0c1f9d04b6b25ee
7
- data.tar.gz: b0d3e298406505840cd6bc27b4e31c4105e4a127ff9e290c145a296f662afb12b316b622a17bf956cbce90ed467b5cc80348a5b253c4f7e5174ad864ba86b730
6
+ metadata.gz: f6e1dc61dd29d0ff9ebb0ace44ff73f88760a233dd393c7d05d5a7dfc878cd9a122b0ebb17b90dec13ac52f122ff2784027a500b38a40dda6cfdd677a4328bd6
7
+ data.tar.gz: cbd2d6eeeadc301d574389402151d5c15b75fc2476d649c05c34ce2aee64558b10e002d4eda1ba2b9462c5bd7b18019a6c9f0e6c0d44a65315d9055a5dc6c706
@@ -49,6 +49,8 @@ module Tracing
49
49
  end
50
50
 
51
51
  class Tracer
52
+ attr_accessor :indent, :nested
53
+
52
54
  def initialize
53
55
  reinitialize
54
56
  end
@@ -202,7 +204,6 @@ module Tracing
202
204
  puts msg
203
205
  end
204
206
 
205
- private
206
207
  def show(*args)
207
208
  key, enabled_prefix = *selected?(args)
208
209
 
@@ -231,6 +232,7 @@ module Tracing
231
232
  !!enabled_prefix
232
233
  end
233
234
 
235
+ private
234
236
  def selected?(args)
235
237
  # Figure out whether this trace is enabled (itself or by :all), if it nests, and if we should print the key:
236
238
  key =
@@ -272,7 +274,15 @@ end
272
274
  # Make the trace method globally available:
273
275
  class Object
274
276
  def trace *args, &block
275
- (Tracing.tracer ||= Tracing::Tracer.new).trace(*args, &block)
277
+ begin
278
+ # This monstrosity reduces the steps when single-stepping:
279
+ tracer = (Tracing.tracer ||= Tracing::Tracer.new) and
280
+ (old_indent, old_nested, enabled = tracer.indent, tracer.nested, tracer.show(*args))
281
+
282
+ block ? yield : (args.size == 0 ? tracer : enabled)
283
+ ensure
284
+ tracer.indent, tracer.nested = old_indent, old_nested
285
+ end
276
286
  end
277
287
  end
278
288
 
@@ -1,3 +1,3 @@
1
1
  module Tracing
2
- VERSION = "2.0.2"
2
+ VERSION = "2.0.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tracing
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Clifford Heath