aws_sdk_ec2/protocol_serde/
shape_create_image_input.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub fn ser_create_image_input_input_input(
3    input: &crate::operation::create_image::CreateImageInput,
4) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
5    let mut out = String::new();
6    #[allow(unused_mut)]
7    let mut writer = ::aws_smithy_query::QueryWriter::new(&mut out, "CreateImage", "2016-11-15");
8    #[allow(unused_mut)]
9    let mut scope_1 = writer.prefix("TagSpecification");
10    if let Some(var_2) = &input.tag_specifications {
11        if !var_2.is_empty() {
12            let mut list_4 = scope_1.start_list(true, Some("item"));
13            for item_3 in var_2 {
14                #[allow(unused_mut)]
15                let mut entry_5 = list_4.entry();
16                crate::protocol_serde::shape_tag_specification::ser_tag_specification(entry_5, item_3)?;
17            }
18            list_4.finish();
19        }
20    }
21    #[allow(unused_mut)]
22    let mut scope_6 = writer.prefix("SnapshotLocation");
23    if let Some(var_7) = &input.snapshot_location {
24        scope_6.string(var_7.as_str());
25    }
26    #[allow(unused_mut)]
27    let mut scope_8 = writer.prefix("DryRun");
28    if let Some(var_9) = &input.dry_run {
29        scope_8.boolean(*var_9);
30    }
31    #[allow(unused_mut)]
32    let mut scope_10 = writer.prefix("InstanceId");
33    if let Some(var_11) = &input.instance_id {
34        scope_10.string(var_11);
35    }
36    #[allow(unused_mut)]
37    let mut scope_12 = writer.prefix("Name");
38    if let Some(var_13) = &input.name {
39        scope_12.string(var_13);
40    }
41    #[allow(unused_mut)]
42    let mut scope_14 = writer.prefix("Description");
43    if let Some(var_15) = &input.description {
44        scope_14.string(var_15);
45    }
46    #[allow(unused_mut)]
47    let mut scope_16 = writer.prefix("NoReboot");
48    if let Some(var_17) = &input.no_reboot {
49        scope_16.boolean(*var_17);
50    }
51    #[allow(unused_mut)]
52    let mut scope_18 = writer.prefix("BlockDeviceMapping");
53    if let Some(var_19) = &input.block_device_mappings {
54        if !var_19.is_empty() {
55            let mut list_21 = scope_18.start_list(true, Some("BlockDeviceMapping"));
56            for item_20 in var_19 {
57                #[allow(unused_mut)]
58                let mut entry_22 = list_21.entry();
59                crate::protocol_serde::shape_block_device_mapping::ser_block_device_mapping(entry_22, item_20)?;
60            }
61            list_21.finish();
62        }
63    }
64    writer.finish();
65    Ok(::aws_smithy_types::body::SdkBody::from(out))
66}