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