Class: Vedeu::Timer
- Inherits:
-
Object
- Object
- Vedeu::Timer
- Defined in:
- lib/vedeu/support/timer.rb
Overview
Measure the duration. Used for debugging.
Instance Attribute Summary collapse
- #message ⇒ String readonly protected
- #started ⇒ Time readonly protected
Class Method Summary collapse
Instance Method Summary collapse
Constructor Details
#initialize(message = '') ⇒ Vedeu::Timer
15 16 17 18 |
# File 'lib/vedeu/support/timer.rb', line 15 def initialize( = '') = @started = Time.now.to_f end |
Instance Attribute Details
#message ⇒ String (readonly, protected)
40 41 42 |
# File 'lib/vedeu/support/timer.rb', line 40 def end |
#started ⇒ Time (readonly, protected)
36 37 38 |
# File 'lib/vedeu/support/timer.rb', line 36 def started @started end |
Class Method Details
.for(message = '', &block) ⇒ void
This method returns an undefined value.
9 10 11 |
# File 'lib/vedeu/support/timer.rb', line 9 def self.for( = '', &block) new().measure(&block) end |
Instance Method Details
#measure(&block) ⇒ void
This method returns an undefined value.
22 23 24 25 26 27 28 29 30 |
# File 'lib/vedeu/support/timer.rb', line 22 def measure(&block) work = yield elapsed = ((Time.now.to_f - started) * 1000).to_i Vedeu.log(type: :debug, message: "#{message} took #{elapsed}ms.") work end |