Function chrono::datetime::serde::ts_nanoseconds::deserialize
source · pub fn deserialize<'de, D>(d: D) -> Result<DateTime<Utc>, D::Error>where
D: Deserializer<'de>,
Expand description
Deserialize a DateTime
from a nanosecond timestamp
Intended for use with serde
s deserialize_with
attribute.
§Example:
use chrono::serde::ts_nanoseconds::deserialize as from_nano_ts;
#[derive(Debug, PartialEq, Deserialize)]
struct S {
#[serde(deserialize_with = "from_nano_ts")]
time: DateTime<Utc>,
}
let my_s: S = serde_json::from_str(r#"{ "time": 1526522699918355733 }"#)?;
assert_eq!(my_s, S { time: Utc.timestamp_opt(1526522699, 918355733).unwrap() });
let my_s: S = serde_json::from_str(r#"{ "time": -1 }"#)?;
assert_eq!(my_s, S { time: Utc.timestamp_opt(-1, 999_999_999).unwrap() });