aws_sdk_ec2/protocol_serde/
shape_create_vpc_input.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub fn ser_create_vpc_input_input_input(
3    input: &crate::operation::create_vpc::CreateVpcInput,
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, "CreateVpc", "2016-11-15");
8    #[allow(unused_mut)]
9    let mut scope_1 = writer.prefix("CidrBlock");
10    if let Some(var_2) = &input.cidr_block {
11        scope_1.string(var_2);
12    }
13    #[allow(unused_mut)]
14    let mut scope_3 = writer.prefix("Ipv6Pool");
15    if let Some(var_4) = &input.ipv6_pool {
16        scope_3.string(var_4);
17    }
18    #[allow(unused_mut)]
19    let mut scope_5 = writer.prefix("Ipv6CidrBlock");
20    if let Some(var_6) = &input.ipv6_cidr_block {
21        scope_5.string(var_6);
22    }
23    #[allow(unused_mut)]
24    let mut scope_7 = writer.prefix("Ipv4IpamPoolId");
25    if let Some(var_8) = &input.ipv4_ipam_pool_id {
26        scope_7.string(var_8);
27    }
28    #[allow(unused_mut)]
29    let mut scope_9 = writer.prefix("Ipv4NetmaskLength");
30    if let Some(var_10) = &input.ipv4_netmask_length {
31        scope_9.number(
32            #[allow(clippy::useless_conversion)]
33            ::aws_smithy_types::Number::NegInt((*var_10).into()),
34        );
35    }
36    #[allow(unused_mut)]
37    let mut scope_11 = writer.prefix("Ipv6IpamPoolId");
38    if let Some(var_12) = &input.ipv6_ipam_pool_id {
39        scope_11.string(var_12);
40    }
41    #[allow(unused_mut)]
42    let mut scope_13 = writer.prefix("Ipv6NetmaskLength");
43    if let Some(var_14) = &input.ipv6_netmask_length {
44        scope_13.number(
45            #[allow(clippy::useless_conversion)]
46            ::aws_smithy_types::Number::NegInt((*var_14).into()),
47        );
48    }
49    #[allow(unused_mut)]
50    let mut scope_15 = writer.prefix("Ipv6CidrBlockNetworkBorderGroup");
51    if let Some(var_16) = &input.ipv6_cidr_block_network_border_group {
52        scope_15.string(var_16);
53    }
54    #[allow(unused_mut)]
55    let mut scope_17 = writer.prefix("TagSpecification");
56    if let Some(var_18) = &input.tag_specifications {
57        if !var_18.is_empty() {
58            let mut list_20 = scope_17.start_list(true, Some("item"));
59            for item_19 in var_18 {
60                #[allow(unused_mut)]
61                let mut entry_21 = list_20.entry();
62                crate::protocol_serde::shape_tag_specification::ser_tag_specification(entry_21, item_19)?;
63            }
64            list_20.finish();
65        }
66    }
67    #[allow(unused_mut)]
68    let mut scope_22 = writer.prefix("DryRun");
69    if let Some(var_23) = &input.dry_run {
70        scope_22.boolean(*var_23);
71    }
72    #[allow(unused_mut)]
73    let mut scope_24 = writer.prefix("InstanceTenancy");
74    if let Some(var_25) = &input.instance_tenancy {
75        scope_24.string(var_25.as_str());
76    }
77    #[allow(unused_mut)]
78    let mut scope_26 = writer.prefix("AmazonProvidedIpv6CidrBlock");
79    if let Some(var_27) = &input.amazon_provided_ipv6_cidr_block {
80        scope_26.boolean(*var_27);
81    }
82    writer.finish();
83    Ok(::aws_smithy_types::body::SdkBody::from(out))
84}