Class: Time

Inherits:
Object
  • Object
show all
Defined in:
lib/quandl/operation/core_ext/time.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.elapsed(message = nil, &block) ⇒ Object



14
15
16
# File 'lib/quandl/operation/core_ext/time.rb', line 14

def elapsed(message=nil, &block)
  log_elapsed(message, &block)
end

.log_elapsed(message = nil, &block) ⇒ Object



5
6
7
8
9
10
11
12
# File 'lib/quandl/operation/core_ext/time.rb', line 5

def log_elapsed(message=nil, &block)
  timer = Time.now
  result = block.call
  message = "#{message} (#{timer.elapsed.microseconds}ms)"
  puts message
  Quandl::Logger.info message
  result
end

Instance Method Details

#elapsedObject



24
25
26
# File 'lib/quandl/operation/core_ext/time.rb', line 24

def elapsed
  elapsed_since(Time.now)
end

#elapsed_msObject



32
33
34
# File 'lib/quandl/operation/core_ext/time.rb', line 32

def elapsed_ms
  "#{elapsed.microseconds}ms"
end

#elapsed_since(time) ⇒ Object



28
29
30
# File 'lib/quandl/operation/core_ext/time.rb', line 28

def elapsed_since(time)
  time - self
end

#microsecondsObject



20
21
22
# File 'lib/quandl/operation/core_ext/time.rb', line 20

def microseconds
  (self.to_f * 1000.0).to_i
end