Module: Numeric::TimeInEnglish

Included in:
Numeric
Defined in:
lib/mega/time_in_english.rb

Overview

:title: Time In English

Plain-English convenience methods module designed for the Numeric class.

Instance Method Summary collapse

Instance Method Details

#after(time = ::Time.now) ⇒ Object Also known as: since, from_now, later

Calculates time after a given time. Default time is now. Reads best with argument: 10.minutes.after(time)



93
94
95
# File 'lib/mega/time_in_english.rb', line 93

def after(time = ::Time.now)
  time + self
end

#before(time = ::Time.now) ⇒ Object Also known as: until, ago

Calculates time before a given time. Default time is now. Reads best with arguments: 10.days.before( Time.now - 1.day )



85
86
87
# File 'lib/mega/time_in_english.rb', line 85

def before(time = ::Time.now)
  time - self
end

#daysObject Also known as: day

Converts days into seconds.



57
# File 'lib/mega/time_in_english.rb', line 57

def days ; self * 24.hours ; end

#fortnightsObject Also known as: fortnight

Converts fortnights into seconds. (A fortnight is 2 weeks)



68
# File 'lib/mega/time_in_english.rb', line 68

def fortnights ; self * 2.weeks ; end

#hoursObject Also known as: hour

Converts hours into seconds.



52
# File 'lib/mega/time_in_english.rb', line 52

def hours ; self * 60.minutes ; end

#minutesObject Also known as: minute

Converts minutes into seconds.



47
# File 'lib/mega/time_in_english.rb', line 47

def minutes ; self * 60 ; end

#monthsObject Also known as: month

Converts months into seconds. WARNING: This is not exact as it assumes 30 days to a month.



74
# File 'lib/mega/time_in_english.rb', line 74

def months ; self * 30.days ; end

#secondsObject Also known as: second

Enables the use of time calculations and declarations, like 45.minutes + 2.hours + 4.years. The base unit for all of these Numeric time methods is seconds.



42
# File 'lib/mega/time_in_english.rb', line 42

def seconds ; self ; end

#weeksObject Also known as: week

Converts weeks into seconds.



62
# File 'lib/mega/time_in_english.rb', line 62

def weeks ; self * 7.days ; end

#yearsObject Also known as: year

Converts years into seconds.



79
# File 'lib/mega/time_in_english.rb', line 79

def years ; self * 365.days ; end