(obj: &Map<String, Value>, key: &str)
| 598 | } |
| 599 | |
| 600 | fn timestamp_field(obj: &Map<String, Value>, key: &str) -> Result<DateTime<Utc>> { |
| 601 | let raw = string_field(obj, key)?; |
| 602 | DateTime::parse_from_rfc3339(&raw) |
| 603 | .map(|dt| dt.with_timezone(&Utc)) |
| 604 | .map_err(|e| CanonicalError::Proof(format!("'{key}' is not a valid RFC 3339 time: {e}"))) |
| 605 | } |
| 606 | |
| 607 | fn optional_timestamp_field(obj: &Map<String, Value>, key: &str) -> Result<Option<DateTime<Utc>>> { |
| 608 | match obj.get(key) { |
no test coverage detected