178 178 | #[allow(missing_docs)] // documentation missing in model
|
179 179 | pub fn unix_timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
|
180 180 | self.unix_timestamp.as_ref()
|
181 181 | }
|
182 182 | }
|
183 183 | static KITCHENSINK_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
|
184 184 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink", "aws.protocoltests.json", "KitchenSink");
|
185 185 | static KITCHENSINK_MEMBER_BLOB: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
186 186 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$Blob", "aws.protocoltests.json", "KitchenSink"),
|
187 187 | ::aws_smithy_schema::ShapeType::Blob,
|
188 - | "blob",
|
188 + | "Blob",
|
189 189 | 0,
|
190 190 | );
|
191 191 | static KITCHENSINK_MEMBER_BOOLEAN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
192 192 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$Boolean", "aws.protocoltests.json", "KitchenSink"),
|
193 193 | ::aws_smithy_schema::ShapeType::Boolean,
|
194 - | "boolean",
|
194 + | "Boolean",
|
195 195 | 1,
|
196 196 | );
|
197 197 | static KITCHENSINK_MEMBER_DOUBLE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
198 198 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$Double", "aws.protocoltests.json", "KitchenSink"),
|
199 199 | ::aws_smithy_schema::ShapeType::Double,
|
200 - | "double",
|
200 + | "Double",
|
201 201 | 2,
|
202 202 | );
|
203 203 | static KITCHENSINK_MEMBER_EMPTY_STRUCT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
204 204 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$EmptyStruct", "aws.protocoltests.json", "KitchenSink"),
|
205 205 | ::aws_smithy_schema::ShapeType::Structure,
|
206 - | "empty_struct",
|
206 + | "EmptyStruct",
|
207 207 | 3,
|
208 208 | );
|
209 209 | static KITCHENSINK_MEMBER_FLOAT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
210 210 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$Float", "aws.protocoltests.json", "KitchenSink"),
|
211 211 | ::aws_smithy_schema::ShapeType::Float,
|
212 - | "float",
|
212 + | "Float",
|
213 213 | 4,
|
214 214 | );
|
215 215 | static KITCHENSINK_MEMBER_HTTPDATE_TIMESTAMP: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
216 216 | ::aws_smithy_schema::ShapeId::from_static(
|
217 217 | "aws.protocoltests.json#KitchenSink$HttpdateTimestamp",
|
218 218 | "aws.protocoltests.json",
|
219 219 | "KitchenSink",
|
220 220 | ),
|
221 221 | ::aws_smithy_schema::ShapeType::Timestamp,
|
222 - | "httpdate_timestamp",
|
222 + | "HttpdateTimestamp",
|
223 223 | 5,
|
224 224 | )
|
225 225 | .with_timestamp_format(aws_smithy_schema::traits::TimestampFormat::HttpDate);
|
226 226 | static KITCHENSINK_MEMBER_INTEGER: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
227 227 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$Integer", "aws.protocoltests.json", "KitchenSink"),
|
228 228 | ::aws_smithy_schema::ShapeType::Integer,
|
229 - | "integer",
|
229 + | "Integer",
|
230 230 | 6,
|
231 231 | );
|
232 232 | static KITCHENSINK_MEMBER_ISO8601_TIMESTAMP: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
233 233 | ::aws_smithy_schema::ShapeId::from_static(
|
234 234 | "aws.protocoltests.json#KitchenSink$Iso8601Timestamp",
|
235 235 | "aws.protocoltests.json",
|
236 236 | "KitchenSink",
|
237 237 | ),
|
238 238 | ::aws_smithy_schema::ShapeType::Timestamp,
|
239 - | "iso8601_timestamp",
|
239 + | "Iso8601Timestamp",
|
240 240 | 7,
|
241 241 | )
|
242 242 | .with_timestamp_format(aws_smithy_schema::traits::TimestampFormat::DateTime);
|
243 243 | static KITCHENSINK_MEMBER_JSON_VALUE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
244 244 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$JsonValue", "aws.protocoltests.json", "KitchenSink"),
|
245 245 | ::aws_smithy_schema::ShapeType::String,
|
246 - | "json_value",
|
246 + | "JsonValue",
|
247 247 | 8,
|
248 248 | );
|
249 249 | static KITCHENSINK_MEMBER_LIST_OF_LISTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
250 250 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$ListOfLists", "aws.protocoltests.json", "KitchenSink"),
|
251 251 | ::aws_smithy_schema::ShapeType::List,
|
252 - | "list_of_lists",
|
252 + | "ListOfLists",
|
253 253 | 9,
|
254 254 | );
|
255 255 | static KITCHENSINK_MEMBER_LIST_OF_MAPS_OF_STRINGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
256 256 | ::aws_smithy_schema::ShapeId::from_static(
|
257 257 | "aws.protocoltests.json#KitchenSink$ListOfMapsOfStrings",
|
258 258 | "aws.protocoltests.json",
|
259 259 | "KitchenSink",
|
260 260 | ),
|
261 261 | ::aws_smithy_schema::ShapeType::List,
|
262 - | "list_of_maps_of_strings",
|
262 + | "ListOfMapsOfStrings",
|
263 263 | 10,
|
264 264 | );
|
265 265 | static KITCHENSINK_MEMBER_LIST_OF_STRINGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
266 266 | ::aws_smithy_schema::ShapeId::from_static(
|
267 267 | "aws.protocoltests.json#KitchenSink$ListOfStrings",
|
268 268 | "aws.protocoltests.json",
|
269 269 | "KitchenSink",
|
270 270 | ),
|
271 271 | ::aws_smithy_schema::ShapeType::List,
|
272 - | "list_of_strings",
|
272 + | "ListOfStrings",
|
273 273 | 11,
|
274 274 | );
|
275 275 | static KITCHENSINK_MEMBER_LIST_OF_STRUCTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
276 276 | ::aws_smithy_schema::ShapeId::from_static(
|
277 277 | "aws.protocoltests.json#KitchenSink$ListOfStructs",
|
278 278 | "aws.protocoltests.json",
|
279 279 | "KitchenSink",
|
280 280 | ),
|
281 281 | ::aws_smithy_schema::ShapeType::List,
|
282 - | "list_of_structs",
|
282 + | "ListOfStructs",
|
283 283 | 12,
|
284 284 | );
|
285 285 | static KITCHENSINK_MEMBER_LONG: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
286 286 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$Long", "aws.protocoltests.json", "KitchenSink"),
|
287 287 | ::aws_smithy_schema::ShapeType::Long,
|
288 - | "long",
|
288 + | "Long",
|
289 289 | 13,
|
290 290 | );
|
291 291 | static KITCHENSINK_MEMBER_MAP_OF_LISTS_OF_STRINGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
292 292 | ::aws_smithy_schema::ShapeId::from_static(
|
293 293 | "aws.protocoltests.json#KitchenSink$MapOfListsOfStrings",
|
294 294 | "aws.protocoltests.json",
|
295 295 | "KitchenSink",
|
296 296 | ),
|
297 297 | ::aws_smithy_schema::ShapeType::Map,
|
298 - | "map_of_lists_of_strings",
|
298 + | "MapOfListsOfStrings",
|
299 299 | 14,
|
300 300 | );
|
301 301 | static KITCHENSINK_MEMBER_MAP_OF_MAPS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
302 302 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$MapOfMaps", "aws.protocoltests.json", "KitchenSink"),
|
303 303 | ::aws_smithy_schema::ShapeType::Map,
|
304 - | "map_of_maps",
|
304 + | "MapOfMaps",
|
305 305 | 15,
|
306 306 | );
|
307 307 | static KITCHENSINK_MEMBER_MAP_OF_STRINGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
308 308 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$MapOfStrings", "aws.protocoltests.json", "KitchenSink"),
|
309 309 | ::aws_smithy_schema::ShapeType::Map,
|
310 - | "map_of_strings",
|
310 + | "MapOfStrings",
|
311 311 | 16,
|
312 312 | );
|
313 313 | static KITCHENSINK_MEMBER_MAP_OF_STRUCTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
314 314 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$MapOfStructs", "aws.protocoltests.json", "KitchenSink"),
|
315 315 | ::aws_smithy_schema::ShapeType::Map,
|
316 - | "map_of_structs",
|
316 + | "MapOfStructs",
|
317 317 | 17,
|
318 318 | );
|
319 319 | static KITCHENSINK_MEMBER_RECURSIVE_LIST: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
320 320 | ::aws_smithy_schema::ShapeId::from_static(
|
321 321 | "aws.protocoltests.json#KitchenSink$RecursiveList",
|
322 322 | "aws.protocoltests.json",
|
323 323 | "KitchenSink",
|
324 324 | ),
|
325 325 | ::aws_smithy_schema::ShapeType::List,
|
326 - | "recursive_list",
|
326 + | "RecursiveList",
|
327 327 | 18,
|
328 328 | );
|
329 329 | static KITCHENSINK_MEMBER_RECURSIVE_MAP: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
330 330 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$RecursiveMap", "aws.protocoltests.json", "KitchenSink"),
|
331 331 | ::aws_smithy_schema::ShapeType::Map,
|
332 - | "recursive_map",
|
332 + | "RecursiveMap",
|
333 333 | 19,
|
334 334 | );
|
335 335 | static KITCHENSINK_MEMBER_RECURSIVE_STRUCT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
336 336 | ::aws_smithy_schema::ShapeId::from_static(
|
337 337 | "aws.protocoltests.json#KitchenSink$RecursiveStruct",
|
338 338 | "aws.protocoltests.json",
|
339 339 | "KitchenSink",
|
340 340 | ),
|
341 341 | ::aws_smithy_schema::ShapeType::Structure,
|
342 - | "recursive_struct",
|
342 + | "RecursiveStruct",
|
343 343 | 20,
|
344 344 | );
|
345 345 | static KITCHENSINK_MEMBER_SIMPLE_STRUCT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
346 346 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$SimpleStruct", "aws.protocoltests.json", "KitchenSink"),
|
347 347 | ::aws_smithy_schema::ShapeType::Structure,
|
348 - | "simple_struct",
|
348 + | "SimpleStruct",
|
349 349 | 21,
|
350 350 | );
|
351 351 | static KITCHENSINK_MEMBER_STRING: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
352 352 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$String", "aws.protocoltests.json", "KitchenSink"),
|
353 353 | ::aws_smithy_schema::ShapeType::String,
|
354 - | "string",
|
354 + | "String",
|
355 355 | 22,
|
356 356 | );
|
357 357 | static KITCHENSINK_MEMBER_STRUCT_WITH_JSON_NAME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
358 358 | ::aws_smithy_schema::ShapeId::from_static(
|
359 359 | "aws.protocoltests.json#KitchenSink$StructWithJsonName",
|
360 360 | "aws.protocoltests.json",
|
361 361 | "KitchenSink",
|
362 362 | ),
|
363 363 | ::aws_smithy_schema::ShapeType::Structure,
|
364 - | "struct_with_json_name",
|
364 + | "StructWithJsonName",
|
365 365 | 23,
|
366 366 | );
|
367 367 | static KITCHENSINK_MEMBER_TIMESTAMP: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
368 368 | ::aws_smithy_schema::ShapeId::from_static("aws.protocoltests.json#KitchenSink$Timestamp", "aws.protocoltests.json", "KitchenSink"),
|
369 369 | ::aws_smithy_schema::ShapeType::Timestamp,
|
370 - | "timestamp",
|
370 + | "Timestamp",
|
371 371 | 24,
|
372 372 | );
|
373 373 | static KITCHENSINK_MEMBER_UNIX_TIMESTAMP: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
|
374 374 | ::aws_smithy_schema::ShapeId::from_static(
|
375 375 | "aws.protocoltests.json#KitchenSink$UnixTimestamp",
|
376 376 | "aws.protocoltests.json",
|
377 377 | "KitchenSink",
|
378 378 | ),
|
379 379 | ::aws_smithy_schema::ShapeType::Timestamp,
|
380 - | "unix_timestamp",
|
380 + | "UnixTimestamp",
|
381 381 | 25,
|
382 382 | )
|
383 383 | .with_timestamp_format(aws_smithy_schema::traits::TimestampFormat::EpochSeconds);
|
384 384 | static KITCHENSINK_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
|
385 385 | KITCHENSINK_SCHEMA_ID,
|
386 386 | ::aws_smithy_schema::ShapeType::Structure,
|
387 387 | &[
|
388 388 | &KITCHENSINK_MEMBER_BLOB,
|
389 389 | &KITCHENSINK_MEMBER_BOOLEAN,
|
390 390 | &KITCHENSINK_MEMBER_DOUBLE,
|
448 448 | ser.write_timestamp(&KITCHENSINK_MEMBER_ISO8601_TIMESTAMP, val)?;
|
449 449 | }
|
450 450 | if let Some(ref val) = self.json_value {
|
451 451 | ser.write_string(&KITCHENSINK_MEMBER_JSON_VALUE, val)?;
|
452 452 | }
|
453 453 | if let Some(ref val) = self.list_of_lists {
|
454 454 | ser.write_list(
|
455 455 | &KITCHENSINK_MEMBER_LIST_OF_LISTS,
|
456 456 | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
457 457 | for item in val {
|
458 - | todo!("schema: unsupported list element type");
|
458 + | ser.write_list(
|
459 + | &::aws_smithy_schema::prelude::DOCUMENT,
|
460 + | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
461 + | for item in item {
|
462 + | ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
|
463 + | }
|
464 + | Ok(())
|
465 + | },
|
466 + | )?;
|
459 467 | }
|
460 468 | Ok(())
|
461 469 | },
|
462 470 | )?;
|
463 471 | }
|
464 472 | if let Some(ref val) = self.list_of_maps_of_strings {
|
465 473 | ser.write_list(
|
466 474 | &KITCHENSINK_MEMBER_LIST_OF_MAPS_OF_STRINGS,
|
467 475 | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
468 476 | for item in val {
|
469 - | todo!("schema: unsupported list element type");
|
477 + | ser.write_map(
|
478 + | &::aws_smithy_schema::prelude::DOCUMENT,
|
479 + | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
480 + | for (key, value) in item {
|
481 + | ser.write_string(&::aws_smithy_schema::prelude::STRING, key)?;
|
482 + | ser.write_string(&::aws_smithy_schema::prelude::STRING, value)?;
|
483 + | }
|
484 + | Ok(())
|
485 + | },
|
486 + | )?;
|
470 487 | }
|
471 488 | Ok(())
|
472 489 | },
|
473 490 | )?;
|
474 491 | }
|
475 492 | if let Some(ref val) = self.list_of_strings {
|
476 493 | ser.write_list(
|
477 494 | &KITCHENSINK_MEMBER_LIST_OF_STRINGS,
|
478 495 | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
479 496 | for item in val {
|
480 497 | ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
|
481 498 | }
|
482 499 | Ok(())
|
483 500 | },
|
484 501 | )?;
|
485 502 | }
|
486 503 | if let Some(ref val) = self.list_of_structs {
|
487 504 | ser.write_list(
|
488 505 | &KITCHENSINK_MEMBER_LIST_OF_STRUCTS,
|
489 506 | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
490 507 | for item in val {
|
491 508 | ser.write_struct(crate::types::SimpleStruct::SCHEMA, item)?;
|
492 509 | }
|
493 510 | Ok(())
|
494 511 | },
|
495 512 | )?;
|
496 513 | }
|
497 514 | if let Some(ref val) = self.long {
|
498 515 | ser.write_long(&KITCHENSINK_MEMBER_LONG, *val)?;
|
499 516 | }
|
500 517 | if let Some(ref val) = self.map_of_lists_of_strings {
|
501 518 | ser.write_map(
|
502 519 | &KITCHENSINK_MEMBER_MAP_OF_LISTS_OF_STRINGS,
|
503 520 | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
504 521 | for (key, value) in val {
|
505 522 | ser.write_string(&::aws_smithy_schema::prelude::STRING, key)?;
|
506 - | todo!("schema: unsupported map value type");
|
523 + |
|
524 + | ser.write_list(
|
525 + | &::aws_smithy_schema::prelude::DOCUMENT,
|
526 + | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
527 + | for item in value {
|
528 + | ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
|
529 + | }
|
530 + | Ok(())
|
531 + | },
|
532 + | )?;
|
507 533 | }
|
508 534 | Ok(())
|
509 535 | },
|
510 536 | )?;
|
511 537 | }
|
512 538 | if let Some(ref val) = self.map_of_maps {
|
513 539 | ser.write_map(
|
514 540 | &KITCHENSINK_MEMBER_MAP_OF_MAPS,
|
515 541 | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
516 542 | for (key, value) in val {
|
517 543 | ser.write_string(&::aws_smithy_schema::prelude::STRING, key)?;
|
518 - | todo!("schema: unsupported map value type");
|
544 + |
|
545 + | ser.write_map(
|
546 + | &::aws_smithy_schema::prelude::DOCUMENT,
|
547 + | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
548 + | for (key, value) in value {
|
549 + | ser.write_string(&::aws_smithy_schema::prelude::STRING, key)?;
|
550 + | ser.write_string(&::aws_smithy_schema::prelude::STRING, value)?;
|
551 + | }
|
552 + | Ok(())
|
553 + | },
|
554 + | )?;
|
519 555 | }
|
520 556 | Ok(())
|
521 557 | },
|
522 558 | )?;
|
523 559 | }
|
524 560 | if let Some(ref val) = self.map_of_strings {
|
525 561 | ser.write_map(
|
526 562 | &KITCHENSINK_MEMBER_MAP_OF_STRINGS,
|
527 563 | &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
|
528 564 | for (key, value) in val {
|
584 620 | ser.write_timestamp(&KITCHENSINK_MEMBER_TIMESTAMP, val)?;
|
585 621 | }
|
586 622 | if let Some(ref val) = self.unix_timestamp {
|
587 623 | ser.write_timestamp(&KITCHENSINK_MEMBER_UNIX_TIMESTAMP, val)?;
|
588 624 | }
|
589 625 | Ok(())
|
590 626 | }
|
591 627 | }
|
592 628 | impl KitchenSink {
|
593 629 | /// Deserializes this structure from a [`ShapeDeserializer`].
|
594 - | pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
|
595 - | deserializer: &mut D,
|
630 + | pub fn deserialize(
|
631 + | deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
|
596 632 | ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
|
597 633 | #[allow(unused_variables, unused_mut)]
|
598 634 | let mut builder = Self::builder();
|
599 635 | #[allow(
|
600 636 | unused_variables,
|
601 637 | unreachable_code,
|
602 638 | clippy::single_match,
|
603 639 | clippy::match_single_binding,
|
604 640 | clippy::diverging_sub_expression
|
605 641 | )]
|
606 - | deserializer.read_struct(&KITCHENSINK_SCHEMA, (), |_, member, deser| {
|
642 + | deserializer.read_struct(&KITCHENSINK_SCHEMA, &mut |member, deser| {
|
607 643 | match member.member_index() {
|
608 644 | Some(0) => {
|
609 645 | builder.blob = Some(deser.read_blob(member)?);
|
610 646 | }
|
611 647 | Some(1) => {
|
612 648 | builder.boolean = Some(deser.read_boolean(member)?);
|
613 649 | }
|
614 650 | Some(2) => {
|
615 651 | builder.double = Some(deser.read_double(member)?);
|
616 652 | }
|
617 653 | Some(3) => {
|
618 654 | builder.empty_struct = Some(crate::types::EmptyStruct::deserialize(deser)?);
|
619 655 | }
|
620 656 | Some(4) => {
|
621 657 | builder.float = Some(deser.read_float(member)?);
|
622 658 | }
|
623 659 | Some(5) => {
|
624 660 | builder.httpdate_timestamp = Some(deser.read_timestamp(member)?);
|
625 661 | }
|
626 662 | Some(6) => {
|
627 663 | builder.integer = Some(deser.read_integer(member)?);
|
628 664 | }
|
629 665 | Some(7) => {
|
630 666 | builder.iso8601_timestamp = Some(deser.read_timestamp(member)?);
|
631 667 | }
|
632 668 | Some(8) => {
|
633 669 | builder.json_value = Some(deser.read_string(member)?);
|
634 670 | }
|
635 671 | Some(9) => {
|
636 672 | builder.list_of_lists = Some({
|
637 - | let container = if let Some(cap) = deser.container_size() {
|
638 - | Vec::with_capacity(cap)
|
639 - | } else {
|
640 - | Vec::new()
|
641 - | };
|
642 - | deser.read_list(member, container, |mut list, deser| {
|
643 - | list.push(todo!("deserialize nested aggregate"));
|
644 - | Ok(list)
|
645 - | })?
|
673 + | let mut container = Vec::new();
|
674 + | deser.read_list(member, &mut |deser| {
|
675 + | container.push({
|
676 + | let mut list = Vec::new();
|
677 + | deser.read_list(member, &mut |deser| {
|
678 + | list.push(deser.read_string(&::aws_smithy_schema::prelude::DOCUMENT)?);
|
679 + | Ok(())
|
680 + | })?;
|
681 + | list
|
682 + | });
|
683 + | Ok(())
|
684 + | })?;
|
685 + | container
|
646 686 | });
|
647 687 | }
|
648 688 | Some(10) => {
|
649 689 | builder.list_of_maps_of_strings = Some({
|
650 - | let container = if let Some(cap) = deser.container_size() {
|
651 - | Vec::with_capacity(cap)
|
652 - | } else {
|
653 - | Vec::new()
|
654 - | };
|
655 - | deser.read_list(member, container, |mut list, deser| {
|
656 - | list.push(todo!("deserialize nested aggregate"));
|
657 - | Ok(list)
|
658 - | })?
|
690 + | let mut container = Vec::new();
|
691 + | deser.read_list(member, &mut |deser| {
|
692 + | container.push({
|
693 + | let mut map = ::std::collections::HashMap::new();
|
694 + | deser.read_map(member, &mut |key, deser| {
|
695 + | let value = deser.read_string(&::aws_smithy_schema::prelude::DOCUMENT)?;
|
696 + | map.insert(key, value);
|
697 + | Ok(())
|
698 + | })?;
|
699 + | map
|
700 + | });
|
701 + | Ok(())
|
702 + | })?;
|
703 + | container
|
659 704 | });
|
660 705 | }
|
661 706 | Some(11) => {
|
662 - | builder.list_of_strings = Some({
|
663 - | let container = if let Some(cap) = deser.container_size() {
|
664 - | Vec::with_capacity(cap)
|
665 - | } else {
|
666 - | Vec::new()
|
667 - | };
|
668 - | deser.read_list(member, container, |mut list, deser| {
|
669 - | list.push(deser.read_string(member)?);
|
670 - | Ok(list)
|
671 - | })?
|
672 - | });
|
707 + | builder.list_of_strings = Some(deser.read_string_list(member)?);
|
673 708 | }
|
674 709 | Some(12) => {
|
675 710 | builder.list_of_structs = Some({
|
676 - | let container = if let Some(cap) = deser.container_size() {
|
677 - | Vec::with_capacity(cap)
|
678 - | } else {
|
679 - | Vec::new()
|
680 - | };
|
681 - | deser.read_list(member, container, |mut list, deser| {
|
682 - | list.push(crate::types::SimpleStruct::deserialize(deser)?);
|
683 - | Ok(list)
|
684 - | })?
|
711 + | let mut container = Vec::new();
|
712 + | deser.read_list(member, &mut |deser| {
|
713 + | container.push(crate::types::SimpleStruct::deserialize(deser)?);
|
714 + | Ok(())
|
715 + | })?;
|
716 + | container
|
685 717 | });
|
686 718 | }
|
687 719 | Some(13) => {
|
688 720 | builder.long = Some(deser.read_long(member)?);
|
689 721 | }
|
690 722 | Some(14) => {
|
691 723 | builder.map_of_lists_of_strings = Some({
|
692 - | let container = if let Some(cap) = deser.container_size() {
|
693 - | std::collections::HashMap::with_capacity(cap)
|
694 - | } else {
|
695 - | std::collections::HashMap::new()
|
696 - | };
|
697 - | deser.read_map(member, container, |mut map, key, deser| {
|
698 - | map.insert(key, todo!("deserialize nested aggregate"));
|
699 - | Ok(map)
|
700 - | })?
|
724 + | let mut container = std::collections::HashMap::new();
|
725 + | deser.read_map(member, &mut |key, deser| {
|
726 + | container.insert(key, {
|
727 + | let mut list = Vec::new();
|
728 + | deser.read_list(member, &mut |deser| {
|
729 + | list.push(deser.read_string(&::aws_smithy_schema::prelude::DOCUMENT)?);
|
730 + | Ok(())
|
731 + | })?;
|
732 + | list
|
733 + | });
|
734 + | Ok(())
|
735 + | })?;
|
736 + | container
|
701 737 | });
|
702 738 | }
|
703 739 | Some(15) => {
|
704 740 | builder.map_of_maps = Some({
|
705 - | let container = if let Some(cap) = deser.container_size() {
|
706 - | std::collections::HashMap::with_capacity(cap)
|
707 - | } else {
|
708 - | std::collections::HashMap::new()
|
709 - | };
|
710 - | deser.read_map(member, container, |mut map, key, deser| {
|
711 - | map.insert(key, todo!("deserialize nested aggregate"));
|
712 - | Ok(map)
|
713 - | })?
|
741 + | let mut container = std::collections::HashMap::new();
|
742 + | deser.read_map(member, &mut |key, deser| {
|
743 + | container.insert(key, {
|
744 + | let mut map = ::std::collections::HashMap::new();
|
745 + | deser.read_map(member, &mut |key, deser| {
|
746 + | let value = deser.read_string(&::aws_smithy_schema::prelude::DOCUMENT)?;
|
747 + | map.insert(key, value);
|
748 + | Ok(())
|
749 + | })?;
|
750 + | map
|
751 + | });
|
752 + | Ok(())
|
753 + | })?;
|
754 + | container
|
714 755 | });
|
715 756 | }
|
716 757 | Some(16) => {
|
717 - | builder.map_of_strings = Some({
|
718 - | let container = if let Some(cap) = deser.container_size() {
|
719 - | std::collections::HashMap::with_capacity(cap)
|
720 - | } else {
|
721 - | std::collections::HashMap::new()
|
722 - | };
|
723 - | deser.read_map(member, container, |mut map, key, deser| {
|
724 - | map.insert(key, deser.read_string(member)?);
|
725 - | Ok(map)
|
726 - | })?
|
727 - | });
|
758 + | builder.map_of_strings = Some(deser.read_string_string_map(member)?);
|
728 759 | }
|
729 760 | Some(17) => {
|
730 761 | builder.map_of_structs = Some({
|
731 - | let container = if let Some(cap) = deser.container_size() {
|
732 - | std::collections::HashMap::with_capacity(cap)
|
733 - | } else {
|
734 - | std::collections::HashMap::new()
|
735 - | };
|
736 - | deser.read_map(member, container, |mut map, key, deser| {
|
737 - | map.insert(key, crate::types::SimpleStruct::deserialize(deser)?);
|
738 - | Ok(map)
|
739 - | })?
|
762 + | let mut container = std::collections::HashMap::new();
|
763 + | deser.read_map(member, &mut |key, deser| {
|
764 + | container.insert(key, crate::types::SimpleStruct::deserialize(deser)?);
|
765 + | Ok(())
|
766 + | })?;
|
767 + | container
|
740 768 | });
|
741 769 | }
|
742 770 | Some(18) => {
|
743 771 | builder.recursive_list = Some({
|
744 - | let container = if let Some(cap) = deser.container_size() {
|
745 - | Vec::with_capacity(cap)
|
746 - | } else {
|
747 - | Vec::new()
|
748 - | };
|
749 - | deser.read_list(member, container, |mut list, deser| {
|
750 - | list.push(crate::types::KitchenSink::deserialize(deser)?);
|
751 - | Ok(list)
|
752 - | })?
|
772 + | let mut container = Vec::new();
|
773 + | deser.read_list(member, &mut |deser| {
|
774 + | container.push(crate::types::KitchenSink::deserialize(deser)?);
|
775 + | Ok(())
|
776 + | })?;
|
777 + | container
|
753 778 | });
|
754 779 | }
|
755 780 | Some(19) => {
|
756 781 | builder.recursive_map = Some({
|
757 - | let container = if let Some(cap) = deser.container_size() {
|
758 - | std::collections::HashMap::with_capacity(cap)
|
759 - | } else {
|
760 - | std::collections::HashMap::new()
|
761 - | };
|
762 - | deser.read_map(member, container, |mut map, key, deser| {
|
763 - | map.insert(key, crate::types::KitchenSink::deserialize(deser)?);
|
764 - | Ok(map)
|
765 - | })?
|
782 + | let mut container = std::collections::HashMap::new();
|
783 + | deser.read_map(member, &mut |key, deser| {
|
784 + | container.insert(key, crate::types::KitchenSink::deserialize(deser)?);
|
785 + | Ok(())
|
786 + | })?;
|
787 + | container
|
766 788 | });
|
767 789 | }
|
768 790 | Some(20) => {
|
769 791 | builder.recursive_struct = Some(Box::new(crate::types::KitchenSink::deserialize(deser)?));
|
770 792 | }
|
771 793 | Some(21) => {
|
772 794 | builder.simple_struct = Some(crate::types::SimpleStruct::deserialize(deser)?);
|
773 795 | }
|
774 796 | Some(22) => {
|
775 797 | builder.string = Some(deser.read_string(member)?);
|
776 798 | }
|
777 799 | Some(23) => {
|
778 800 | builder.struct_with_json_name = Some(crate::types::StructWithJsonName::deserialize(deser)?);
|
779 801 | }
|
780 802 | Some(24) => {
|
781 803 | builder.timestamp = Some(deser.read_timestamp(member)?);
|
782 804 | }
|
783 805 | Some(25) => {
|
784 806 | builder.unix_timestamp = Some(deser.read_timestamp(member)?);
|
785 807 | }
|
786 808 | _ => {}
|
787 809 | }
|
788 810 | Ok(())
|
789 811 | })?;
|
790 812 | Ok(builder.build())
|
791 813 | }
|
792 814 | }
|
815 + | impl KitchenSink {
|
816 + | /// Deserializes this structure from a body deserializer and HTTP response.
|
817 + | pub fn deserialize_with_response(
|
818 + | deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
|
819 + | _headers: &::aws_smithy_runtime_api::http::Headers,
|
820 + | _status: u16,
|
821 + | _body: &[u8],
|
822 + | ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
|
823 + | Self::deserialize(deserializer)
|
824 + | }
|
825 + | }
|
793 826 | impl KitchenSink {
|
794 827 | /// Creates a new builder-style object to manufacture [`KitchenSink`](crate::types::KitchenSink).
|
795 828 | pub fn builder() -> crate::types::builders::KitchenSinkBuilder {
|
796 829 | crate::types::builders::KitchenSinkBuilder::default()
|
797 830 | }
|
798 831 | }
|
799 832 |
|
800 833 | /// A builder for [`KitchenSink`](crate::types::KitchenSink).
|
801 834 | #[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
|
802 835 | #[non_exhaustive]
|