forked from
oppi.li/at-advent
this repo has no description
1use atrium_api::types::Unknown;
2use serde::de;
3
4pub mod dns_resolver;
5pub mod post;
6pub mod service_auth;
7pub mod stores;
8
9/// Safely parses an unknown record into a type. If it fails, it logs the error and returns an error.
10pub fn safe_check_unknown_record_parse<T>(unknown: Unknown) -> serde_json::Result<T>
11where
12 T: de::DeserializeOwned,
13{
14 let json = serde_json::to_vec(&unknown).map_err(|err| {
15 log::error!("Error getting the bytes of a record: {}", err);
16 err
17 })?;
18 serde_json::from_slice::<T>(&json)
19}