1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(unused_mut)]
pub fn ser_metric_datum(
    mut writer: ::aws_smithy_query::QueryValueWriter,
    input: &crate::types::MetricDatum,
) -> Result<(), ::aws_smithy_types::error::operation::SerializationError> {
    #[allow(unused_mut)]
    let mut scope_1 = writer.prefix("MetricName");
    if let Some(var_2) = &input.metric_name {
        scope_1.string(var_2);
    }
    #[allow(unused_mut)]
    let mut scope_3 = writer.prefix("Dimensions");
    if let Some(var_4) = &input.dimensions {
        let mut list_6 = scope_3.start_list(false, None);
        for item_5 in var_4 {
            #[allow(unused_mut)]
            let mut entry_7 = list_6.entry();
            crate::protocol_serde::shape_dimension::ser_dimension(entry_7, item_5)?;
        }
        list_6.finish();
    }
    #[allow(unused_mut)]
    let mut scope_8 = writer.prefix("Timestamp");
    if let Some(var_9) = &input.timestamp {
        scope_8.date_time(var_9, ::aws_smithy_types::date_time::Format::DateTime)?;
    }
    #[allow(unused_mut)]
    let mut scope_10 = writer.prefix("Value");
    if let Some(var_11) = &input.value {
        scope_10.number(
            #[allow(clippy::useless_conversion)]
            ::aws_smithy_types::Number::Float((*var_11).into()),
        );
    }
    #[allow(unused_mut)]
    let mut scope_12 = writer.prefix("StatisticValues");
    if let Some(var_13) = &input.statistic_values {
        crate::protocol_serde::shape_statistic_set::ser_statistic_set(scope_12, var_13)?;
    }
    #[allow(unused_mut)]
    let mut scope_14 = writer.prefix("Values");
    if let Some(var_15) = &input.values {
        let mut list_17 = scope_14.start_list(false, None);
        for item_16 in var_15 {
            #[allow(unused_mut)]
            let mut entry_18 = list_17.entry();
            entry_18.number(
                #[allow(clippy::useless_conversion)]
                ::aws_smithy_types::Number::Float((*item_16).into()),
            );
        }
        list_17.finish();
    }
    #[allow(unused_mut)]
    let mut scope_19 = writer.prefix("Counts");
    if let Some(var_20) = &input.counts {
        let mut list_22 = scope_19.start_list(false, None);
        for item_21 in var_20 {
            #[allow(unused_mut)]
            let mut entry_23 = list_22.entry();
            entry_23.number(
                #[allow(clippy::useless_conversion)]
                ::aws_smithy_types::Number::Float((*item_21).into()),
            );
        }
        list_22.finish();
    }
    #[allow(unused_mut)]
    let mut scope_24 = writer.prefix("Unit");
    if let Some(var_25) = &input.unit {
        scope_24.string(var_25.as_str());
    }
    #[allow(unused_mut)]
    let mut scope_26 = writer.prefix("StorageResolution");
    if let Some(var_27) = &input.storage_resolution {
        scope_26.number(
            #[allow(clippy::useless_conversion)]
            ::aws_smithy_types::Number::NegInt((*var_27).into()),
        );
    }
    Ok(())
}