aws-sdk-keyspaces 1.104.0

AWS SDK for Amazon Keyspaces
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub fn ser_update_table_input_input(
    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::operation::update_table::UpdateTableInput,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
    if let Some(var_1) = &input.keyspace_name {
        object.key("keyspaceName").string(var_1.as_str());
    }
    if let Some(var_2) = &input.table_name {
        object.key("tableName").string(var_2.as_str());
    }
    if let Some(var_3) = &input.add_columns {
        let mut array_4 = object.key("addColumns").start_array();
        for item_5 in var_3 {
            {
                #[allow(unused_mut)]
                let mut object_6 = array_4.value().start_object();
                crate::protocol_serde::shape_column_definition::ser_column_definition(&mut object_6, item_5)?;
                object_6.finish();
            }
        }
        array_4.finish();
    }
    if let Some(var_7) = &input.capacity_specification {
        #[allow(unused_mut)]
        let mut object_8 = object.key("capacitySpecification").start_object();
        crate::protocol_serde::shape_capacity_specification::ser_capacity_specification(&mut object_8, var_7)?;
        object_8.finish();
    }
    if let Some(var_9) = &input.encryption_specification {
        #[allow(unused_mut)]
        let mut object_10 = object.key("encryptionSpecification").start_object();
        crate::protocol_serde::shape_encryption_specification::ser_encryption_specification(&mut object_10, var_9)?;
        object_10.finish();
    }
    if let Some(var_11) = &input.point_in_time_recovery {
        #[allow(unused_mut)]
        let mut object_12 = object.key("pointInTimeRecovery").start_object();
        crate::protocol_serde::shape_point_in_time_recovery::ser_point_in_time_recovery(&mut object_12, var_11)?;
        object_12.finish();
    }
    if let Some(var_13) = &input.ttl {
        #[allow(unused_mut)]
        let mut object_14 = object.key("ttl").start_object();
        crate::protocol_serde::shape_time_to_live::ser_time_to_live(&mut object_14, var_13)?;
        object_14.finish();
    }
    if let Some(var_15) = &input.default_time_to_live {
        object.key("defaultTimeToLive").number(
            #[allow(clippy::useless_conversion)]
            ::aws_smithy_types::Number::NegInt((*var_15).into()),
        );
    }
    if let Some(var_16) = &input.client_side_timestamps {
        #[allow(unused_mut)]
        let mut object_17 = object.key("clientSideTimestamps").start_object();
        crate::protocol_serde::shape_client_side_timestamps::ser_client_side_timestamps(&mut object_17, var_16)?;
        object_17.finish();
    }
    if let Some(var_18) = &input.auto_scaling_specification {
        #[allow(unused_mut)]
        let mut object_19 = object.key("autoScalingSpecification").start_object();
        crate::protocol_serde::shape_auto_scaling_specification::ser_auto_scaling_specification(&mut object_19, var_18)?;
        object_19.finish();
    }
    if let Some(var_20) = &input.replica_specifications {
        let mut array_21 = object.key("replicaSpecifications").start_array();
        for item_22 in var_20 {
            {
                #[allow(unused_mut)]
                let mut object_23 = array_21.value().start_object();
                crate::protocol_serde::shape_replica_specification::ser_replica_specification(&mut object_23, item_22)?;
                object_23.finish();
            }
        }
        array_21.finish();
    }
    if let Some(var_24) = &input.cdc_specification {
        #[allow(unused_mut)]
        let mut object_25 = object.key("cdcSpecification").start_object();
        crate::protocol_serde::shape_cdc_specification::ser_cdc_specification(&mut object_25, var_24)?;
        object_25.finish();
    }
    if let Some(var_26) = &input.warm_throughput_specification {
        #[allow(unused_mut)]
        let mut object_27 = object.key("warmThroughputSpecification").start_object();
        crate::protocol_serde::shape_warm_throughput_specification::ser_warm_throughput_specification(&mut object_27, var_26)?;
        object_27.finish();
    }
    Ok(())
}