pub struct RegisteredDevicesObject {
pub registered_devices: RegisteredDevices,
}Expand description
§Example
use chrono::{DateTime, NaiveDateTime, Utc};
use twitter_archive::convert::date_time_iso_8601;
use twitter_archive::structs::key_registry::RegisteredDevicesObject;
let created_at_string = "2023-05-30T13:31:42.908Z";
let created_at_native_time = NaiveDateTime::parse_from_str(&created_at_string, date_time_iso_8601::FORMAT).unwrap();
let created_at_date_time = DateTime::<Utc>::from_naive_utc_and_offset(created_at_native_time, Utc);
let json = format!(r#"{{
"registeredDevices": {{
"deviceMetadataList": [
{{
"userAgent": "Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101 Firefox/102.0",
"registrationToken": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"identityKey": "DEADBEEF",
"createdAt": "{created_at_string}",
"deviceId": "xxxxxxxx-111a-0000-abcd-333333333333"
}}
]
}}
}}"#);
let data: RegisteredDevicesObject = serde_json::from_str(&json).unwrap();
// De-serialized properties
assert_eq!(data.registered_devices.device_metadata_list[0].user_agent, "Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101 Firefox/102.0");
assert_eq!(data.registered_devices.device_metadata_list[0].registration_token, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
assert_eq!(data.registered_devices.device_metadata_list[0].identity_key, "DEADBEEF");
assert_eq!(data.registered_devices.device_metadata_list[0].created_at, created_at_date_time);
assert_eq!(data.registered_devices.device_metadata_list[0].device_id, "xxxxxxxx-111a-0000-abcd-333333333333");
// Re-serialize is equivalent to original data
assert_eq!(serde_json::to_string_pretty(&data).unwrap(), json);Fields§
§registered_devices: RegisteredDevices§Example JSON data
{
"registeredDevices": {
"deviceMetadataList": [
{
"userAgent": "Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101 Firefox/102.0",
"registrationToken": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"identityKey": "DEADBEEF",
"createdAt": "2023-05-30T13:31:42.908Z",
"deviceId": "xxxxxxxx-111a-0000-abcd-333333333333"
}
]
}
}Trait Implementations§
Source§impl Clone for RegisteredDevicesObject
impl Clone for RegisteredDevicesObject
Source§fn clone(&self) -> RegisteredDevicesObject
fn clone(&self) -> RegisteredDevicesObject
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RegisteredDevicesObject
impl Debug for RegisteredDevicesObject
Source§impl<'de> Deserialize<'de> for RegisteredDevicesObject
impl<'de> Deserialize<'de> for RegisteredDevicesObject
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for RegisteredDevicesObject
impl Display for RegisteredDevicesObject
Auto Trait Implementations§
impl Freeze for RegisteredDevicesObject
impl RefUnwindSafe for RegisteredDevicesObject
impl Send for RegisteredDevicesObject
impl Sync for RegisteredDevicesObject
impl Unpin for RegisteredDevicesObject
impl UnwindSafe for RegisteredDevicesObject
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more