mirror of
https://github.com/plashchynski/crono.git
synced 2026-04-25 10:18:49 +02:00
Rename to Crono
This commit is contained in:
24
lib/crono/period.rb
Normal file
24
lib/crono/period.rb
Normal file
@@ -0,0 +1,24 @@
|
||||
module Crono
|
||||
class Period
|
||||
def initialize(period, at: nil)
|
||||
@period = period
|
||||
@at_hour, @at_min = parse_at(at) if at
|
||||
end
|
||||
|
||||
def next
|
||||
@period.from_now.change({hour: @at_hour, min: @at_min}.compact)
|
||||
end
|
||||
|
||||
def parse_at(at)
|
||||
case at
|
||||
when String
|
||||
time = Time.parse(at)
|
||||
return time.hour, time.min
|
||||
when Hash
|
||||
return at[:hour], at[:min]
|
||||
else
|
||||
raise "Unknown 'at' format"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user