Sha256: cb5c60d3de726be59943b667c73d17328664aef49b4761a3515390bc41472bb8
Contents?: true
Size: 880 Bytes
Versions: 6
Compression:
Stored size: 880 Bytes
Contents
# frozen_string_literal: true require 'ur' unless Object.const_defined?(:Ur) module Ur module Metadata include SubUr def began_at began_at_s ? Time.parse(began_at_s) : nil end def began_at=(time) self.began_at_s = time ? time.utc.iso8601(6) : nil end attr_accessor :began_at_ns # sets began_at from the current time def begin! self.began_at = Time.now self.began_at_ns = Process.clock_gettime(Process::CLOCK_MONOTONIC, :nanosecond) end # sets the duration from the current time and began_at def finish! return if duration if began_at_ns now_ns = Process.clock_gettime(Process::CLOCK_MONOTONIC, :nanosecond) self.duration = (now_ns - began_at_ns) * 1e-9 elsif began_at now = Time.now self.duration = (now.to_f - began_at.to_f) end end end end
Version data entries
6 entries across 6 versions & 1 rubygems
Version | Path |
---|---|
ur-0.2.5 | lib/ur/metadata.rb |
ur-0.2.4 | lib/ur/metadata.rb |
ur-0.2.3 | lib/ur/metadata.rb |
ur-0.2.2 | lib/ur/metadata.rb |
ur-0.2.1 | lib/ur/metadata.rb |
ur-0.2.0 | lib/ur/metadata.rb |