pub struct P13nDataObject {
pub p13n_data: P13nData,
}Expand description
§Example
use twitter_archive::structs::personalization::P13nDataObject;
let json = r##"{
"p13nData": {
"demographics": {
"languages": [
{
"language": "English",
"isDisabled": false
}
],
"genderInfo": {
"gender": "unknown",
"genderOverride": "Borg"
}
},
"interests": {
"interests": [
{
"name": "#HappyFriday",
"isDisabled": false
}
],
"partnerInterests": [],
"audienceAndAdvertisers": {
"lookalikeAdvertisers": [
"@EXAMPLE_ONE",
"@EXAMPLE_TWO"
],
"advertisers": [],
"doNotReachAdvertisers": [],
"catalogAudienceAdvertisers": [],
"numAudiences": "0"
},
"shows": [
"1899",
"DuckTales"
]
},
"locationHistory": [],
"inferredAgeInfo": {
"age": [
"13-99"
],
"birthDate": ""
}
}
}"##;
let data: P13nDataObject = serde_json::from_str(&json).unwrap();
// De-serialized properties
assert_eq!(data.p13n_data.demographics.languages[0].language, "English");
assert_eq!(data.p13n_data.demographics.languages[0].is_disabled, false);
assert_eq!(data.p13n_data.demographics.gender_info.gender, "unknown");
assert_eq!(data.p13n_data.demographics.gender_info.gender_override, "Borg");
assert_eq!(data.p13n_data.interests.interests[0].name, "#HappyFriday");
assert_eq!(data.p13n_data.interests.interests[0].is_disabled, false);
assert_eq!(data.p13n_data.interests.partner_interests.len(), 0);
assert_eq!(data.p13n_data.interests.audience_and_advertisers.lookalike_advertisers.len(), 2);
assert_eq!(data.p13n_data.interests.audience_and_advertisers.advertisers.len(), 0);
assert_eq!(data.p13n_data.interests.audience_and_advertisers.do_not_reach_advertisers.len(), 0);
assert_eq!(data.p13n_data.interests.audience_and_advertisers.catalog_audience_advertisers.len(), 0);
assert_eq!(data.p13n_data.interests.audience_and_advertisers.num_audiences, 0);
assert_eq!(data.p13n_data.interests.shows[0], "1899");
assert_eq!(data.p13n_data.interests.shows[1], "DuckTales");
assert_eq!(data.p13n_data.location_history.len(), 0);
assert_eq!(data.p13n_data.inferred_age_info.age[0], "13-99");
assert_eq!(data.p13n_data.inferred_age_info.birth_date, "");
// Re-serialize is equivalent to original data
assert_eq!(serde_json::to_string_pretty(&data).unwrap(), json);Fields§
§p13n_data: P13nData§Example JSON data
{
"p13nData": {
"demographics": {
"languages": [
{
"language": "English",
"isDisabled": false
}
],
"genderInfo": {
"gender": "unknown",
"genderOverride": "Borg"
}
},
"interests": {
"interests": [
{
"name": "#HappyFriday",
"isDisabled": false
}
],
"partnerInterests": [],
"audienceAndAdvertisers": {
"lookalikeAdvertisers": [
"@EXAMPLE_ONE",
"@EXAMPLE_TWO"
],
"advertisers": [],
"doNotReachAdvertisers": [],
"catalogAudienceAdvertisers": [],
"numAudiences": "0"
},
"shows": [
"1899",
"DuckTales"
]
},
"locationHistory": [],
"inferredAgeInfo": {
"age": [
"13-99"
],
"birthDate": ""
}
}
}Trait Implementations§
Source§impl Clone for P13nDataObject
impl Clone for P13nDataObject
Source§fn clone(&self) -> P13nDataObject
fn clone(&self) -> P13nDataObject
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 P13nDataObject
impl Debug for P13nDataObject
Source§impl<'de> Deserialize<'de> for P13nDataObject
impl<'de> Deserialize<'de> for P13nDataObject
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 P13nDataObject
impl Display for P13nDataObject
Auto Trait Implementations§
impl Freeze for P13nDataObject
impl RefUnwindSafe for P13nDataObject
impl Send for P13nDataObject
impl Sync for P13nDataObject
impl Unpin for P13nDataObject
impl UnwindSafe for P13nDataObject
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