aws_sdk_pinpoint/protocol_serde/
shape_number_validate_response.rs1pub(crate) fn de_number_validate_response_payload(
3 _value: &[u8],
4) -> ::std::result::Result<crate::types::NumberValidateResponse, ::aws_smithy_json::deserialize::error::DeserializeError> {
5 let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(crate::protocol_serde::or_empty_doc(_value)).peekable();
6 let tokens = &mut tokens_owned;
7 let result = crate::protocol_serde::shape_number_validate_response::de_number_validate_response(tokens, _value)?
8 .ok_or_else(|| ::aws_smithy_json::deserialize::error::DeserializeError::custom("expected payload member value"));
9 if tokens.next().is_some() {
10 return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
11 "found more JSON tokens after completing parsing",
12 ));
13 }
14 result
15}
16
17pub(crate) fn de_number_validate_response<'a, I>(
18 tokens: &mut ::std::iter::Peekable<I>,
19 _value: &'a [u8],
20) -> ::std::result::Result<Option<crate::types::NumberValidateResponse>, ::aws_smithy_json::deserialize::error::DeserializeError>
21where
22 I: Iterator<Item = Result<::aws_smithy_json::deserialize::Token<'a>, ::aws_smithy_json::deserialize::error::DeserializeError>>,
23{
24 match tokens.next().transpose()? {
25 Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
26 Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
27 #[allow(unused_mut)]
28 let mut builder = crate::types::builders::NumberValidateResponseBuilder::default();
29 loop {
30 match tokens.next().transpose()? {
31 Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
32 Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
33 "Carrier" => {
34 builder = builder.set_carrier(
35 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
36 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
37 .transpose()?,
38 );
39 }
40 "City" => {
41 builder = builder.set_city(
42 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
43 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
44 .transpose()?,
45 );
46 }
47 "CleansedPhoneNumberE164" => {
48 builder = builder.set_cleansed_phone_number_e164(
49 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
50 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
51 .transpose()?,
52 );
53 }
54 "CleansedPhoneNumberNational" => {
55 builder = builder.set_cleansed_phone_number_national(
56 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
57 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
58 .transpose()?,
59 );
60 }
61 "Country" => {
62 builder = builder.set_country(
63 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
64 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
65 .transpose()?,
66 );
67 }
68 "CountryCodeIso2" => {
69 builder = builder.set_country_code_iso2(
70 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
71 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
72 .transpose()?,
73 );
74 }
75 "CountryCodeNumeric" => {
76 builder = builder.set_country_code_numeric(
77 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
78 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
79 .transpose()?,
80 );
81 }
82 "County" => {
83 builder = builder.set_county(
84 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
85 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
86 .transpose()?,
87 );
88 }
89 "OriginalCountryCodeIso2" => {
90 builder = builder.set_original_country_code_iso2(
91 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
92 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
93 .transpose()?,
94 );
95 }
96 "OriginalPhoneNumber" => {
97 builder = builder.set_original_phone_number(
98 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
99 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
100 .transpose()?,
101 );
102 }
103 "PhoneType" => {
104 builder = builder.set_phone_type(
105 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
106 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
107 .transpose()?,
108 );
109 }
110 "PhoneTypeCode" => {
111 builder = builder.set_phone_type_code(
112 ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
113 .map(i32::try_from)
114 .transpose()?,
115 );
116 }
117 "Timezone" => {
118 builder = builder.set_timezone(
119 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
120 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
121 .transpose()?,
122 );
123 }
124 "ZipCode" => {
125 builder = builder.set_zip_code(
126 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
127 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
128 .transpose()?,
129 );
130 }
131 _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
132 },
133 other => {
134 return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
135 "expected object key or end object, found: {other:?}"
136 )))
137 }
138 }
139 }
140 Ok(Some(builder.build()))
141 }
142 _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
143 "expected start object or null",
144 )),
145 }
146}