aws_sdk_dynamodb/protocol_serde/
shape_create_table_input.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub fn ser_create_table_input_input(
3    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
4    input: &crate::operation::create_table::CreateTableInput,
5) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
6    if let Some(var_1) = &input.attribute_definitions {
7        let mut array_2 = object.key("AttributeDefinitions").start_array();
8        for item_3 in var_1 {
9            {
10                #[allow(unused_mut)]
11                let mut object_4 = array_2.value().start_object();
12                crate::protocol_serde::shape_attribute_definition::ser_attribute_definition(&mut object_4, item_3)?;
13                object_4.finish();
14            }
15        }
16        array_2.finish();
17    }
18    if let Some(var_5) = &input.table_name {
19        object.key("TableName").string(var_5.as_str());
20    }
21    if let Some(var_6) = &input.key_schema {
22        let mut array_7 = object.key("KeySchema").start_array();
23        for item_8 in var_6 {
24            {
25                #[allow(unused_mut)]
26                let mut object_9 = array_7.value().start_object();
27                crate::protocol_serde::shape_key_schema_element::ser_key_schema_element(&mut object_9, item_8)?;
28                object_9.finish();
29            }
30        }
31        array_7.finish();
32    }
33    if let Some(var_10) = &input.local_secondary_indexes {
34        let mut array_11 = object.key("LocalSecondaryIndexes").start_array();
35        for item_12 in var_10 {
36            {
37                #[allow(unused_mut)]
38                let mut object_13 = array_11.value().start_object();
39                crate::protocol_serde::shape_local_secondary_index::ser_local_secondary_index(&mut object_13, item_12)?;
40                object_13.finish();
41            }
42        }
43        array_11.finish();
44    }
45    if let Some(var_14) = &input.global_secondary_indexes {
46        let mut array_15 = object.key("GlobalSecondaryIndexes").start_array();
47        for item_16 in var_14 {
48            {
49                #[allow(unused_mut)]
50                let mut object_17 = array_15.value().start_object();
51                crate::protocol_serde::shape_global_secondary_index::ser_global_secondary_index(&mut object_17, item_16)?;
52                object_17.finish();
53            }
54        }
55        array_15.finish();
56    }
57    if let Some(var_18) = &input.billing_mode {
58        object.key("BillingMode").string(var_18.as_str());
59    }
60    if let Some(var_19) = &input.provisioned_throughput {
61        #[allow(unused_mut)]
62        let mut object_20 = object.key("ProvisionedThroughput").start_object();
63        crate::protocol_serde::shape_provisioned_throughput::ser_provisioned_throughput(&mut object_20, var_19)?;
64        object_20.finish();
65    }
66    if let Some(var_21) = &input.stream_specification {
67        #[allow(unused_mut)]
68        let mut object_22 = object.key("StreamSpecification").start_object();
69        crate::protocol_serde::shape_stream_specification::ser_stream_specification(&mut object_22, var_21)?;
70        object_22.finish();
71    }
72    if let Some(var_23) = &input.sse_specification {
73        #[allow(unused_mut)]
74        let mut object_24 = object.key("SSESpecification").start_object();
75        crate::protocol_serde::shape_sse_specification::ser_sse_specification(&mut object_24, var_23)?;
76        object_24.finish();
77    }
78    if let Some(var_25) = &input.tags {
79        let mut array_26 = object.key("Tags").start_array();
80        for item_27 in var_25 {
81            {
82                #[allow(unused_mut)]
83                let mut object_28 = array_26.value().start_object();
84                crate::protocol_serde::shape_tag::ser_tag(&mut object_28, item_27)?;
85                object_28.finish();
86            }
87        }
88        array_26.finish();
89    }
90    if let Some(var_29) = &input.table_class {
91        object.key("TableClass").string(var_29.as_str());
92    }
93    if let Some(var_30) = &input.deletion_protection_enabled {
94        object.key("DeletionProtectionEnabled").boolean(*var_30);
95    }
96    if let Some(var_31) = &input.warm_throughput {
97        #[allow(unused_mut)]
98        let mut object_32 = object.key("WarmThroughput").start_object();
99        crate::protocol_serde::shape_warm_throughput::ser_warm_throughput(&mut object_32, var_31)?;
100        object_32.finish();
101    }
102    if let Some(var_33) = &input.resource_policy {
103        object.key("ResourcePolicy").string(var_33.as_str());
104    }
105    if let Some(var_34) = &input.on_demand_throughput {
106        #[allow(unused_mut)]
107        let mut object_35 = object.key("OnDemandThroughput").start_object();
108        crate::protocol_serde::shape_on_demand_throughput::ser_on_demand_throughput(&mut object_35, var_34)?;
109        object_35.finish();
110    }
111    Ok(())
112}