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
-
#after(time = ::Time.now) ⇒ Object
(also: #since, #from_now, #later)
Calculates time after a given time.
-
#before(time = ::Time.now) ⇒ Object
(also: #until, #ago)
Calculates time before a given time.
-
#days ⇒ Object
(also: #day)
Converts days into seconds.
-
#fortnights ⇒ Object
(also: #fortnight)
Converts fortnights into seconds.
-
#hours ⇒ Object
(also: #hour)
Converts hours into seconds.
-
#minutes ⇒ Object
(also: #minute)
Converts minutes into seconds.
-
#months ⇒ Object
(also: #month)
Converts months into seconds.
-
#seconds ⇒ Object
(also: #second)
Enables the use of time calculations and declarations, like 45.minutes + 2.hours + 4.years.
-
#weeks ⇒ Object
(also: #week)
Converts weeks into seconds.
-
#years ⇒ Object
(also: #year)
Converts years into seconds.
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 |
#days ⇒ Object Also known as: day
Converts days into seconds.
57 |
# File 'lib/mega/time_in_english.rb', line 57 def days ; self * 24.hours ; end |
#fortnights ⇒ Object 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 |
#hours ⇒ Object Also known as: hour
Converts hours into seconds.
52 |
# File 'lib/mega/time_in_english.rb', line 52 def hours ; self * 60.minutes ; end |
#minutes ⇒ Object Also known as: minute
Converts minutes into seconds.
47 |
# File 'lib/mega/time_in_english.rb', line 47 def minutes ; self * 60 ; end |
#months ⇒ Object 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 |
#seconds ⇒ Object 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 |
#weeks ⇒ Object Also known as: week
Converts weeks into seconds.
62 |
# File 'lib/mega/time_in_english.rb', line 62 def weeks ; self * 7.days ; end |
#years ⇒ Object Also known as: year
Converts years into seconds.
79 |
# File 'lib/mega/time_in_english.rb', line 79 def years ; self * 365.days ; end |