Module: Blab
- Defined in:
- lib/blab.rb,
lib/blab/config.rb,
lib/blab/tracer.rb,
lib/blab/printer.rb,
lib/blab/version.rb,
lib/blab/formatter.rb
Defined Under Namespace
Modules: Config, Tracer Classes: Formatter, Printer
Constant Summary collapse
- VERSION =
"0.0.2"
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.included(base) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/blab.rb', line 10 def self.included(base) base.define_singleton_method(:blab) do |name| old_m = self.instance_method(name) self.send(:define_method, name) do |*args| begin set_trace_func(Blab::Tracer.trace) old_m.bind(self).call(*args) ensure set_trace_func(nil) Blab::Tracer.reset end end end def with_blab begin set_trace_func(Blab::Tracer.trace) yield ensure set_trace_func(nil) Blab::Tracer.reset end end end |