Sha256: 8d12a5bba79344e3c3a53ef1a63aa5079ebec85f3351de94e10a591719165d26
Contents?: true
Size: 704 Bytes
Versions: 14
Compression:
Stored size: 704 Bytes
Contents
require 'time' require 'date' class Time # # Parses the time but never fails. # Return value is always in the UTC time zone. # # A flattened datetime -- a 14-digit YYYYmmddHHMMMSS -- is fixed to the UTC # time zone by parsing it as YYYYmmddHHMMMSSZ <- 'Z' at end # def self.parse_safely dt return nil if dt.nil? || (dt.respond_to?(:empty) && dt.empty?) begin case when dt.is_a?(Time) then dt.utc when (dt.to_s =~ /\A\d{14}\z/) then parse(dt.to_s+'Z', true) else parse(dt.to_s, true).utc end rescue StandardError => e Log.debug e end end unless method_defined?(:parse_safely) end
Version data entries
14 entries across 14 versions & 1 rubygems