class TickTock::Duration
Constants
- MILLIS_IN_DAY
- MILLIS_IN_HOUR
- MILLIS_IN_MINUTE
- MILLIS_IN_SECOND
- MILLIS_IN_WEEK
- MILLIS_IN_YEAR
Attributes
raw_millis[R]
Public Class Methods
from_pieces(millis=0, seconds=0, minutes=0, hours=0, days=0, weeks=0, years=0)
click to toggle source
# File lib/tick-tock/duration.rb, line 18 def self.from_pieces(millis=0, seconds=0, minutes=0, hours=0, days=0, weeks=0, years=0) Duration.new(millis + seconds * MILLIS_IN_SECOND + minutes * MILLIS_IN_MINUTE + hours * MILLIS_IN_HOUR + days * MILLIS_IN_DAY + weeks * MILLIS_IN_WEEK + years * MILLIS_IN_YEAR) end
from_times(start, finish)
click to toggle source
# File lib/tick-tock/duration.rb, line 14 def self.from_times(start, finish) Duration.new(((finish - start) * 1000).to_i) end
new(millis = 0)
click to toggle source
# File lib/tick-tock/duration.rb, line 28 def initialize(millis = 0) @raw_millis = millis @formatter = TickTock::Formatter.new(self) end
Public Instance Methods
+(other)
click to toggle source
# File lib/tick-tock/duration.rb, line 33 def +(other) Duration.new(raw_millis + other.raw_millis) end
-(other)
click to toggle source
# File lib/tick-tock/duration.rb, line 37 def -(other) Duration.new(raw_millis - other.raw_millis) end
days()
click to toggle source
# File lib/tick-tock/duration.rb, line 49 def days (raw_millis - years_in_millis - weeks_in_millis) / MILLIS_IN_DAY end
hours()
click to toggle source
# File lib/tick-tock/duration.rb, line 53 def hours (raw_millis - years_in_millis - weeks_in_millis - days_in_millis) / MILLIS_IN_HOUR end
inspect()
click to toggle source
# File lib/tick-tock/duration.rb, line 73 def inspect to_s end
millis()
click to toggle source
# File lib/tick-tock/duration.rb, line 65 def millis raw_millis - years_in_millis - weeks_in_millis - days_in_millis - hours_in_millis - minutes_in_millis - seconds_in_millis end
minutes()
click to toggle source
# File lib/tick-tock/duration.rb, line 57 def minutes (raw_millis - years_in_millis - weeks_in_millis - days_in_millis - hours_in_millis) / MILLIS_IN_MINUTE end
seconds()
click to toggle source
# File lib/tick-tock/duration.rb, line 61 def seconds (raw_millis - years_in_millis - weeks_in_millis - days_in_millis - hours_in_millis - minutes_in_millis) / MILLIS_IN_SECOND end
to_s()
click to toggle source
# File lib/tick-tock/duration.rb, line 69 def to_s @formatter.to_s end
weeks()
click to toggle source
# File lib/tick-tock/duration.rb, line 45 def weeks (raw_millis - years_in_millis) / MILLIS_IN_WEEK end
years()
click to toggle source
# File lib/tick-tock/duration.rb, line 41 def years raw_millis / MILLIS_IN_YEAR end
Private Instance Methods
days_in_millis()
click to toggle source
# File lib/tick-tock/duration.rb, line 87 def days_in_millis MILLIS_IN_DAY * days end
hours_in_millis()
click to toggle source
# File lib/tick-tock/duration.rb, line 91 def hours_in_millis MILLIS_IN_HOUR * hours end
minutes_in_millis()
click to toggle source
# File lib/tick-tock/duration.rb, line 95 def minutes_in_millis MILLIS_IN_MINUTE * minutes end
seconds_in_millis()
click to toggle source
# File lib/tick-tock/duration.rb, line 99 def seconds_in_millis MILLIS_IN_SECOND * seconds end
weeks_in_millis()
click to toggle source
# File lib/tick-tock/duration.rb, line 83 def weeks_in_millis MILLIS_IN_WEEK * weeks end
years_in_millis()
click to toggle source
# File lib/tick-tock/duration.rb, line 79 def years_in_millis MILLIS_IN_YEAR * years end