aws_sdk_sagemaker/protocol_serde/
shape_cluster_instance_group_specification.rs1pub fn ser_cluster_instance_group_specification(
3 object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
4 input: &crate::types::ClusterInstanceGroupSpecification,
5) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
6 if let Some(var_1) = &input.instance_count {
7 object.key("InstanceCount").number(
8 #[allow(clippy::useless_conversion)]
9 ::aws_smithy_types::Number::NegInt((*var_1).into()),
10 );
11 }
12 if let Some(var_2) = &input.instance_group_name {
13 object.key("InstanceGroupName").string(var_2.as_str());
14 }
15 if let Some(var_3) = &input.instance_type {
16 object.key("InstanceType").string(var_3.as_str());
17 }
18 if let Some(var_4) = &input.life_cycle_config {
19 #[allow(unused_mut)]
20 let mut object_5 = object.key("LifeCycleConfig").start_object();
21 crate::protocol_serde::shape_cluster_life_cycle_config::ser_cluster_life_cycle_config(&mut object_5, var_4)?;
22 object_5.finish();
23 }
24 if let Some(var_6) = &input.execution_role {
25 object.key("ExecutionRole").string(var_6.as_str());
26 }
27 if let Some(var_7) = &input.threads_per_core {
28 object.key("ThreadsPerCore").number(
29 #[allow(clippy::useless_conversion)]
30 ::aws_smithy_types::Number::NegInt((*var_7).into()),
31 );
32 }
33 if let Some(var_8) = &input.instance_storage_configs {
34 let mut array_9 = object.key("InstanceStorageConfigs").start_array();
35 for item_10 in var_8 {
36 {
37 #[allow(unused_mut)]
38 let mut object_11 = array_9.value().start_object();
39 crate::protocol_serde::shape_cluster_instance_storage_config::ser_cluster_instance_storage_config(&mut object_11, item_10)?;
40 object_11.finish();
41 }
42 }
43 array_9.finish();
44 }
45 if let Some(var_12) = &input.on_start_deep_health_checks {
46 let mut array_13 = object.key("OnStartDeepHealthChecks").start_array();
47 for item_14 in var_12 {
48 {
49 array_13.value().string(item_14.as_str());
50 }
51 }
52 array_13.finish();
53 }
54 if let Some(var_15) = &input.training_plan_arn {
55 object.key("TrainingPlanArn").string(var_15.as_str());
56 }
57 if let Some(var_16) = &input.override_vpc_config {
58 #[allow(unused_mut)]
59 let mut object_17 = object.key("OverrideVpcConfig").start_object();
60 crate::protocol_serde::shape_vpc_config::ser_vpc_config(&mut object_17, var_16)?;
61 object_17.finish();
62 }
63 if let Some(var_18) = &input.scheduled_update_config {
64 #[allow(unused_mut)]
65 let mut object_19 = object.key("ScheduledUpdateConfig").start_object();
66 crate::protocol_serde::shape_scheduled_update_config::ser_scheduled_update_config(&mut object_19, var_18)?;
67 object_19.finish();
68 }
69 Ok(())
70}