lib/vedeu/support/timer.rb in vedeu-0.4.23 vs lib/vedeu/support/timer.rb in vedeu-0.4.24
- old
+ new
@@ -1,20 +1,23 @@
module Vedeu
# Measure the duration. Used for debugging.
class Timer
+ # @param type [Symbol]
# @param message [String]
# @param block [Proc]
# @return [void]
- def self.for(message = '', &block)
- new(message).measure(&block)
+ def self.for(type = :debug, message = '', &block)
+ new(type, message).measure(&block)
end
+ # @param type [Symbol]
# @param message [String]
# @return [Vedeu::Timer]
- def initialize(message = '')
+ def initialize(type = :debug, message = '')
+ @type = type
@message = message
@started = Time.now.to_f
end
# @param block [Proc]
@@ -22,11 +25,11 @@
def measure(&block)
work = yield
elapsed = ((Time.now.to_f - started) * 1000).to_i
- Vedeu.log(type: :debug, message: "#{message} took #{elapsed}ms.")
+ Vedeu.log(type: type, message: "#{message} took #{elapsed}ms.")
work
end
protected
@@ -36,9 +39,13 @@
attr_reader :started
# @!attribute [r] message
# @return [String]
attr_reader :message
+
+ # @!attribute [r] type
+ # @return [Symbol]
+ attr_reader :type
end # Timer
end # Vedeu