Class: CocinaDisplay::Dates::Iso8601Format

Inherits:
Date
  • Object
show all
Defined in:
lib/cocina_display/dates/date.rb

Overview

Strict ISO8601-encoded date parser.

Constant Summary

Constants inherited from Date

Date::BCE_CHAR_SORT_MAP, Date::UNPARSABLE_VALUES

Instance Attribute Summary

Attributes inherited from Date

#cocina, #date, #encoding, #type

Class Method Summary collapse

Methods inherited from Date

#<=>, #approximate?, #as_range, #base_value, #decoded_value, #encoding?, #end?, format_date, from_cocina, #inferred?, #initialize, #label, normalize_to_edtf, notifier, #parsable?, #parsed_date?, #precision, #primary?, #qualified?, #qualified_value, #qualifier, #questionable?, #sort_key, #start?, #to_a, #to_s, #value

Constructor Details

This class inherits a constructor from CocinaDisplay::Dates::Date

Class Method Details

.parse_date(value) ⇒ Object



480
481
482
483
484
485
# File 'lib/cocina_display/dates/date.rb', line 480

def self.parse_date(value)
  ::Date.parse(normalize_to_edtf(value))
rescue ::Date::Error
  notifier&.notify("Invalid date value \"#{value}\" for iso8601 encoding")
  nil
end