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



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

def days()            seconds * PER_DAY               end

#hoursObject Also known as: hour



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

def hours()           seconds * PER_HOUR             end

#in_daysObject



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

def in_days()         seconds / PER_DAY          end

#in_hoursObject



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

def in_hours()        seconds / PER_HOUR          end

#in_microsecondsObject



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

def in_microseconds() seconds / PER_MICROSECOND   end

#in_millisecondsObject



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

def in_milliseconds() seconds / PER_MILLISECOND    end

#in_minutesObject



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

def in_minutes()      seconds / PER_MINUTE         end

#in_seconds(u = nil) ⇒ Object



71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/familia/core_ext.rb', line 71

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



67
68
69
# File 'lib/familia/core_ext.rb', line 67

def in_time
  Time.at(self).utc
end

#in_weeksObject



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

def in_weeks()        seconds / PER_DAY / 7       end

#in_yearsObject



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

def in_years()        seconds / PER_DAY / 365      end

#microsecondsObject Also known as: μs



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

def microseconds()    seconds * PER_MICROSECOND     end

#millisecondsObject Also known as: ms



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

def milliseconds()    seconds * PER_MILLISECOND    end

#minutesObject Also known as: minute



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

def minutes()         seconds * PER_MINUTE          end

#secondsObject Also known as: second



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

def seconds()         self                         end

#weeksObject Also known as: week



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

def weeks()           seconds * PER_DAY * 7           end

#yearsObject Also known as: year



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

def years()           seconds * PER_DAY * 365        end