Sha256: daaa21b5a9beaa8e5161ae38c24c622a1ef066c3912d48348a7cdc7716f242b7
Contents?: true
Size: 746 Bytes
Versions: 1
Compression:
Stored size: 746 Bytes
Contents
module Zhong class Every class FailedToParse < StandardError; end EVERY_KEYWORDS = { day: 1.day, week: 1.week, month: 1.month, semiannual: 6.months, # enterprise! year: 1.year, decade: 10.years }.freeze def initialize(period) @period = period end def next_at(last = Time.now) last + @period end def self.parse(every) return unless every case every when Numeric, ActiveSupport::Duration new(every) when String, Symbol key = every.downcase.to_sym fail FailedToParse, every unless EVERY_KEYWORDS.key?(key) new(EVERY_KEYWORDS[key]) else fail FailedToParse, every end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
zhong-0.1.4 | lib/zhong/every.rb |