Sha256: 05695ef94b2db9125482e8ef5d2a750dd86e596b4878286ed38fb10d001b9a89
Contents?: true
Size: 877 Bytes
Versions: 3
Compression:
Stored size: 877 Bytes
Contents
# frozen_string_literal: true module ChronoTrigger module Timeline extend ::ActiveSupport::Concern class LostInTimeError < StandardError end class TodayIsTomorrowsYesterday < StandardError end def chrono_trigger ChronoTrigger::Schedule.instance end def right_now now = Time.zone.now Time.zone.today + now.hour.hours + now.min.minutes + now.sec.seconds end def moment_in_the_future(time_with_zone) raise(LostInTimeError, "Argument must be of type ActiveSupport::TimeWithZone eg. right_now + 1.second") unless time_with_zone.is_a?(ActiveSupport::TimeWithZone) raise(TodayIsTomorrowsYesterday, "Time must be in the future eg. 1.second.from_now") unless time_with_zone.future? Time.zone.today + time_with_zone.hour.hours + time_with_zone.min.minutes + time_with_zone.sec.seconds end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
chrono_trigger-1.0.2 | lib/chrono_trigger/timeline.rb |
chrono_trigger-1.0.1 | lib/chrono_trigger/timeline.rb |
chrono_trigger-1.0.0 | lib/chrono_trigger/timeline.rb |