Sha256: c57a49fc39758f3889113e584a3c04aab7471f5ce5c6b8416a31bb64b7ae2dd4
Contents?: true
Size: 1.13 KB
Versions: 9
Compression:
Stored size: 1.13 KB
Contents
# encoding: utf-8 module Origin module Extensions # This module contains additional datetime behaviour. module DateTime # Evolve the date time into a mongo friendly UTC time. # # @example Evolve the date time. # date_time.__evolve_time__ # # @return [ Time ] The converted time in UTC. # # @since 1.0.0 def __evolve_time__ if utc? ::Time.utc(year, month, day, hour, min, sec) else ::Time.local(year, month, day, hour, min, sec).utc end end module ClassMethods # Evolve the object to an date. # # @example Evolve dates. # # @example Evolve string dates. # # @example Evolve date ranges. # # @param [ Object ] object The object to evolve. # # @return [ Time ] The evolved date time. # # @since 1.0.0 def evolve(object) object.__evolve_time__ end end end end end ::DateTime.__send__(:include, Origin::Extensions::DateTime) ::DateTime.__send__(:extend, Origin::Extensions::DateTime::ClassMethods)
Version data entries
9 entries across 9 versions & 1 rubygems