pub fn de_dehexify<'de, D, T>(hex: D) -> Result<T, D::Error>where
D: Deserializer<'de>,
T: Dehexify,
Expand description
Deserialize hex to T
.
ยงExamples
use serde::Deserialize;
#[derive(Debug, PartialEq, Deserialize)]
struct Ljf {
#[serde(deserialize_with = "array_bytes::de_dehexify")]
_0: u8,
#[serde(deserialize_with = "array_bytes::de_dehexify")]
_1: u16,
#[serde(deserialize_with = "array_bytes::de_dehexify")]
_2: u32,
#[serde(deserialize_with = "array_bytes::de_dehexify")]
_3: [u8; 4],
}
assert_eq!(
serde_json::from_str::<Ljf>(
r#"{
"_0": "0x5",
"_1": "0x2",
"_2": "0x0",
"_3": "0x01030104"
}"#
)
.unwrap(),
Ljf { _0: 5, _1: 2, _2: 0, _3: [1, 3, 1, 4] }
);