Module: Time::Units

Included in:
Numeric
Defined in:
lib/familia/core_ext.rb

Constant Summary collapse

PER_MICROSECOND =
0.000001.freeze
PER_MILLISECOND =
0.001.freeze
PER_MINUTE =
60.0.freeze
PER_HOUR =
3600.0.freeze
PER_DAY =
86400.0.freeze

Instance Method Summary collapse

Instance Method Details

#daysObject Also known as: day



34
# File 'lib/familia/core_ext.rb', line 34

def days()            seconds * PER_DAY               end

#hoursObject Also known as: hour



33
# File 'lib/familia/core_ext.rb', line 33

def hours()           seconds * PER_HOUR             end

#in_daysObject



40
# File 'lib/familia/core_ext.rb', line 40

def in_days()         seconds / PER_DAY          end

#in_hoursObject



41
# File 'lib/familia/core_ext.rb', line 41

def in_hours()        seconds / PER_HOUR          end

#in_microsecondsObject



44
# File 'lib/familia/core_ext.rb', line 44

def in_microseconds() seconds / PER_MICROSECOND   end

#in_millisecondsObject



43
# File 'lib/familia/core_ext.rb', line 43

def in_milliseconds() seconds / PER_MILLISECOND    end

#in_minutesObject



42
# File 'lib/familia/core_ext.rb', line 42

def in_minutes()      seconds / PER_MINUTE         end

#in_seconds(u = nil) ⇒ Object



50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/familia/core_ext.rb', line 50

def in_seconds(u=nil)
  case u.to_s
  when /\A(y)|(years?)\z/
    years
  when /\A(w)|(weeks?)\z/
    weeks
  when /\A(d)|(days?)\z/
    days
  when /\A(h)|(hours?)\z/
    hours
  when /\A(m)|(minutes?)\z/
    minutes
  when /\A(ms)|(milliseconds?)\z/
    milliseconds
  when /\A(us)|(microseconds?)|(μs)\z/
    microseconds
  else
    self
  end
end

#in_timeObject



46
47
48
# File 'lib/familia/core_ext.rb', line 46

def in_time
  Time.at(self).utc
end

#in_weeksObject



39
# File 'lib/familia/core_ext.rb', line 39

def in_weeks()        seconds / PER_DAY / 7       end

#in_yearsObject



38
# File 'lib/familia/core_ext.rb', line 38

def in_years()        seconds / PER_DAY / 365      end

#microsecondsObject Also known as: μs



29
# File 'lib/familia/core_ext.rb', line 29

def microseconds()    seconds * PER_MICROSECOND     end

#millisecondsObject Also known as: ms



30
# File 'lib/familia/core_ext.rb', line 30

def milliseconds()    seconds * PER_MILLISECOND    end

#minutesObject Also known as: minute



32
# File 'lib/familia/core_ext.rb', line 32

def minutes()         seconds * PER_MINUTE          end

#secondsObject Also known as: second



31
# File 'lib/familia/core_ext.rb', line 31

def seconds()         self                         end

#weeksObject Also known as: week



35
# File 'lib/familia/core_ext.rb', line 35

def weeks()           seconds * PER_DAY * 7           end

#yearsObject Also known as: year



36
# File 'lib/familia/core_ext.rb', line 36

def years()           seconds * PER_DAY * 365        end