Sha256: 51f3eb3567d0ddb9d799dad4cf6fcbee4bf517183641a3dcb929b13913deb057
Contents?: true
Size: 1.12 KB
Versions: 4
Compression:
Stored size: 1.12 KB
Contents
module Metrics class TimeUnit def self.to_nsec(mult = 1) raise NotImplementedError end end class Nanoseconds < TimeUnit def self.to_nsec(mult = 1) mult end end class Microseconds < TimeUnit def self.to_nsec(mult = 1) 1000 * mult end end class Milliseconds < TimeUnit def self.to_nsec(mult = 1) 1000000 * mult end end class Seconds < TimeUnit def self.to_nsec(mult = 1) 1000000000 * mult end end class Minutes < TimeUnit def self.to_nsec(mult = 1) 60000000000 * mult end end class Hours < TimeUnit def self.to_nsec(mult = 1) 3600000000000 * mult end end module TimeConversion def convert_to_ns(value, unit) units = { :nanoseconds => Nanoseconds, :microseconds => Microseconds, :milliseconds => Milliseconds, :seconds => Seconds, :minutes => Minutes, :hours => Hours } return units[unit].to_nsec * value end end end
Version data entries
4 entries across 4 versions & 1 rubygems