Sha256: fdbe6a0e0441da406e0c814b4704262df7f9268834d8c47920465c3f4b6f4071
Contents?: true
Size: 970 Bytes
Versions: 4
Compression:
Stored size: 970 Bytes
Contents
module Vedeu # Measure the duration. Used for debugging. # # @api public class Timer class << self # @example # Vedeu.timer 'message' do # # ... code to be measured # end # # @param message [String] # @param block [Proc] # @return [void] def timer(message = '', &block) new(message).measure(&block) end end # @param message [String] # @return [Vedeu::Timer] def initialize(message = '') @message = message @started = Time.now.to_f end # @return [void] def measure work = yield elapsed = ((Time.now.to_f - started) * 1000).round(3) Vedeu.log(type: :timer, message: "#{message} took #{elapsed}ms.") work end protected # @!attribute [r] started # @return [Time] attr_reader :started # @!attribute [r] message # @return [String] attr_reader :message end # Timer end # Vedeu
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
vedeu-0.4.37 | lib/vedeu/support/timer.rb |
vedeu-0.4.36 | lib/vedeu/support/timer.rb |
vedeu-0.4.35 | lib/vedeu/support/timer.rb |
vedeu-0.4.34 | lib/vedeu/support/timer.rb |