aws_sdk_ec2/protocol_serde/
shape_request_spot_launch_specification.rs1#[allow(unused_mut)]
3pub fn ser_request_spot_launch_specification(
4 mut writer: ::aws_smithy_query::QueryValueWriter,
5 input: &crate::types::RequestSpotLaunchSpecification,
6) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
7 #[allow(unused_mut)]
8 let mut scope_1 = writer.prefix("SecurityGroupId");
9 if let Some(var_2) = &input.security_group_ids {
10 if !var_2.is_empty() {
11 let mut list_4 = scope_1.start_list(true, Some("item"));
12 for item_3 in var_2 {
13 #[allow(unused_mut)]
14 let mut entry_5 = list_4.entry();
15 entry_5.string(item_3);
16 }
17 list_4.finish();
18 }
19 }
20 #[allow(unused_mut)]
21 let mut scope_6 = writer.prefix("SecurityGroup");
22 if let Some(var_7) = &input.security_groups {
23 if !var_7.is_empty() {
24 let mut list_9 = scope_6.start_list(true, Some("item"));
25 for item_8 in var_7 {
26 #[allow(unused_mut)]
27 let mut entry_10 = list_9.entry();
28 entry_10.string(item_8);
29 }
30 list_9.finish();
31 }
32 }
33 #[allow(unused_mut)]
34 let mut scope_11 = writer.prefix("AddressingType");
35 if let Some(var_12) = &input.addressing_type {
36 scope_11.string(var_12);
37 }
38 #[allow(unused_mut)]
39 let mut scope_13 = writer.prefix("BlockDeviceMapping");
40 if let Some(var_14) = &input.block_device_mappings {
41 if !var_14.is_empty() {
42 let mut list_16 = scope_13.start_list(true, Some("item"));
43 for item_15 in var_14 {
44 #[allow(unused_mut)]
45 let mut entry_17 = list_16.entry();
46 crate::protocol_serde::shape_block_device_mapping::ser_block_device_mapping(entry_17, item_15)?;
47 }
48 list_16.finish();
49 }
50 }
51 #[allow(unused_mut)]
52 let mut scope_18 = writer.prefix("EbsOptimized");
53 if let Some(var_19) = &input.ebs_optimized {
54 scope_18.boolean(*var_19);
55 }
56 #[allow(unused_mut)]
57 let mut scope_20 = writer.prefix("IamInstanceProfile");
58 if let Some(var_21) = &input.iam_instance_profile {
59 crate::protocol_serde::shape_iam_instance_profile_specification::ser_iam_instance_profile_specification(scope_20, var_21)?;
60 }
61 #[allow(unused_mut)]
62 let mut scope_22 = writer.prefix("ImageId");
63 if let Some(var_23) = &input.image_id {
64 scope_22.string(var_23);
65 }
66 #[allow(unused_mut)]
67 let mut scope_24 = writer.prefix("InstanceType");
68 if let Some(var_25) = &input.instance_type {
69 scope_24.string(var_25.as_str());
70 }
71 #[allow(unused_mut)]
72 let mut scope_26 = writer.prefix("KernelId");
73 if let Some(var_27) = &input.kernel_id {
74 scope_26.string(var_27);
75 }
76 #[allow(unused_mut)]
77 let mut scope_28 = writer.prefix("KeyName");
78 if let Some(var_29) = &input.key_name {
79 scope_28.string(var_29);
80 }
81 #[allow(unused_mut)]
82 let mut scope_30 = writer.prefix("Monitoring");
83 if let Some(var_31) = &input.monitoring {
84 crate::protocol_serde::shape_run_instances_monitoring_enabled::ser_run_instances_monitoring_enabled(scope_30, var_31)?;
85 }
86 #[allow(unused_mut)]
87 let mut scope_32 = writer.prefix("NetworkInterface");
88 if let Some(var_33) = &input.network_interfaces {
89 if !var_33.is_empty() {
90 let mut list_35 = scope_32.start_list(true, Some("item"));
91 for item_34 in var_33 {
92 #[allow(unused_mut)]
93 let mut entry_36 = list_35.entry();
94 crate::protocol_serde::shape_instance_network_interface_specification::ser_instance_network_interface_specification(
95 entry_36, item_34,
96 )?;
97 }
98 list_35.finish();
99 }
100 }
101 #[allow(unused_mut)]
102 let mut scope_37 = writer.prefix("Placement");
103 if let Some(var_38) = &input.placement {
104 crate::protocol_serde::shape_spot_placement::ser_spot_placement(scope_37, var_38)?;
105 }
106 #[allow(unused_mut)]
107 let mut scope_39 = writer.prefix("RamdiskId");
108 if let Some(var_40) = &input.ramdisk_id {
109 scope_39.string(var_40);
110 }
111 #[allow(unused_mut)]
112 let mut scope_41 = writer.prefix("SubnetId");
113 if let Some(var_42) = &input.subnet_id {
114 scope_41.string(var_42);
115 }
116 #[allow(unused_mut)]
117 let mut scope_43 = writer.prefix("UserData");
118 if let Some(var_44) = &input.user_data {
119 scope_43.string(var_44);
120 }
121 Ok(())
122}