Server Test

Server Test

rev. 9815deb0e78f27fa2930fdd2a243ed5e08ec6a8f

Files changed:

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_sparse_set_map.rs

@@ -1,1 +75,75 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/* JsonParserGenerator.kt:497 */
           2  +
/* JsonParserGenerator.kt:490 */
    3      3   
pub(crate) fn de_sparse_set_map<'a, I>(
    4      4   
    tokens: &mut ::std::iter::Peekable<I>,
    5      5   
    _value: &'a [u8],
    6      6   
) -> ::std::result::Result<
    7      7   
    Option<crate::unconstrained::sparse_set_map_unconstrained::SparseSetMapUnconstrained>,
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
   23         -
            /* JsonParserGenerator.kt:506 */
          23  +
            /* JsonParserGenerator.kt:499 */
   24     24   
            let mut map = ::std::collections::HashMap::new();
   25         -
            /* JsonParserGenerator.kt:721 */
          25  +
            /* JsonParserGenerator.kt:703 */
   26     26   
            loop {
   27         -
                /* JsonParserGenerator.kt:722 */
          27  +
                /* JsonParserGenerator.kt:704 */
   28     28   
                match tokens.next().transpose()? {
   29         -
                    /* JsonParserGenerator.kt:723 */
          29  +
                    /* JsonParserGenerator.kt:705 */
   30     30   
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   31     31   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   32         -
                        /* JsonParserGenerator.kt:508 */
          32  +
                        /* JsonParserGenerator.kt:501 */
   33     33   
                        let key =
   34     34   
                            /* JsonParserGenerator.kt:346 */key.to_unescaped().map(|u|
   35     35   
                                /* JsonParserGenerator.kt:355 */u.into_owned()
   36     36   
                            /* JsonParserGenerator.kt:346 */)
   37         -
                        /* JsonParserGenerator.kt:508 */?;
   38         -
                        /* JsonParserGenerator.kt:511 */
          37  +
                        /* JsonParserGenerator.kt:501 */?;
          38  +
                        /* JsonParserGenerator.kt:504 */
   39     39   
                        let value =
   40         -
                            /* JsonParserGenerator.kt:488 */crate::protocol_serde::shape_string_set::de_string_set(tokens, _value)?
   41         -
                        /* JsonParserGenerator.kt:511 */;
   42         -
                        /* JsonParserGenerator.kt:515 */
          40  +
                            /* JsonParserGenerator.kt:481 */crate::protocol_serde::shape_string_set::de_string_set(tokens, _value)?
          41  +
                        /* JsonParserGenerator.kt:504 */;
          42  +
                        /* JsonParserGenerator.kt:508 */
   43     43   
                        map.insert(key, value);
   44         -
                        /* JsonParserGenerator.kt:723 */
          44  +
                        /* JsonParserGenerator.kt:705 */
   45     45   
                    }
   46         -
                    /* JsonParserGenerator.kt:732 */
          46  +
                    /* JsonParserGenerator.kt:714 */
   47     47   
                    other => {
   48     48   
                        return Err(
   49     49   
                            ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   50     50   
                                format!("expected object key or end object, found: {other:?}"),
   51     51   
                            ),
   52     52   
                        )
   53         -
                    } /* JsonParserGenerator.kt:722 */
          53  +
                    } /* JsonParserGenerator.kt:704 */
   54     54   
                }
   55         -
                /* JsonParserGenerator.kt:721 */
          55  +
                /* JsonParserGenerator.kt:703 */
   56     56   
            }
   57         -
            /* JsonParserGenerator.kt:539 */
          57  +
            /* JsonParserGenerator.kt:521 */
   58     58   
            Ok(Some(
   59     59   
                crate::unconstrained::sparse_set_map_unconstrained::SparseSetMapUnconstrained(map),
   60     60   
            ))
   61         -
            /* JsonParserGenerator.kt:750 */
          61  +
            /* JsonParserGenerator.kt:732 */
   62     62   
        }
   63         -
        /* JsonParserGenerator.kt:759 */
          63  +
        /* JsonParserGenerator.kt:741 */
   64     64   
        _ => {
   65         -
            /* JsonParserGenerator.kt:760 */
          65  +
            /* JsonParserGenerator.kt:742 */
   66     66   
            Err(
   67     67   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   68     68   
                    "expected start object or null",
   69     69   
                ),
   70     70   
            )
   71         -
            /* JsonParserGenerator.kt:759 */
   72         -
        } /* JsonParserGenerator.kt:749 */
          71  +
            /* JsonParserGenerator.kt:741 */
          72  +
        } /* JsonParserGenerator.kt:731 */
   73     73   
    }
   74         -
    /* JsonParserGenerator.kt:497 */
          74  +
    /* JsonParserGenerator.kt:490 */
   75     75   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_sparse_short_list.rs

@@ -1,1 +68,68 @@
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => {
   23     23   
            /* JsonParserGenerator.kt:444 */
   24     24   
            let mut items = Vec::new();
   25     25   
            /* JsonParserGenerator.kt:445 */
   26     26   
            loop {
   27     27   
                /* JsonParserGenerator.kt:446 */
   28     28   
                match tokens.peek() {
   29     29   
                    /* JsonParserGenerator.kt:447 */
   30     30   
                    Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => {
   31     31   
                        /* JsonParserGenerator.kt:448 */
   32     32   
                        tokens.next().transpose().unwrap();
   33     33   
                        break;
   34     34   
                        /* JsonParserGenerator.kt:447 */
   35     35   
                    }
   36     36   
                    /* JsonParserGenerator.kt:450 */
   37     37   
                    _ => {
   38     38   
                        /* JsonParserGenerator.kt:452 */
   39     39   
                        items.push(
   40     40   
                            /* JsonParserGenerator.kt:372 */
   41     41   
                            ::aws_smithy_json::deserialize::token::expect_number_or_null(
   42     42   
                                tokens.next(),
   43     43   
                            )?
   44     44   
                            .map(i16::try_from)
   45     45   
                            .transpose()?, /* JsonParserGenerator.kt:452 */
   46     46   
                        );
   47     47   
                        /* JsonParserGenerator.kt:450 */
   48     48   
                    } /* JsonParserGenerator.kt:446 */
   49     49   
                }
   50     50   
                /* JsonParserGenerator.kt:445 */
   51     51   
            }
   52         -
            /* JsonParserGenerator.kt:483 */
          52  +
            /* JsonParserGenerator.kt:476 */
   53     53   
            Ok(Some(items))
   54         -
            /* JsonParserGenerator.kt:750 */
          54  +
            /* JsonParserGenerator.kt:732 */
   55     55   
        }
   56         -
        /* JsonParserGenerator.kt:759 */
          56  +
        /* JsonParserGenerator.kt:741 */
   57     57   
        _ => {
   58         -
            /* JsonParserGenerator.kt:760 */
          58  +
            /* JsonParserGenerator.kt:742 */
   59     59   
            Err(
   60     60   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   61     61   
                    "expected start array or null",
   62     62   
                ),
   63     63   
            )
   64         -
            /* JsonParserGenerator.kt:759 */
   65         -
        } /* JsonParserGenerator.kt:749 */
          64  +
            /* JsonParserGenerator.kt:741 */
          65  +
        } /* JsonParserGenerator.kt:731 */
   66     66   
    }
   67     67   
    /* JsonParserGenerator.kt:435 */
   68     68   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_sparse_string_list.rs

@@ -1,1 +71,71 @@
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => {
   23     23   
            /* JsonParserGenerator.kt:444 */
   24     24   
            let mut items = Vec::new();
   25     25   
            /* JsonParserGenerator.kt:445 */
   26     26   
            loop {
   27     27   
                /* JsonParserGenerator.kt:446 */
   28     28   
                match tokens.peek() {
   29     29   
                    /* JsonParserGenerator.kt:447 */
   30     30   
                    Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => {
   31     31   
                        /* JsonParserGenerator.kt:448 */
   32     32   
                        tokens.next().transpose().unwrap();
   33     33   
                        break;
   34     34   
                        /* JsonParserGenerator.kt:447 */
   35     35   
                    }
   36     36   
                    /* JsonParserGenerator.kt:450 */
   37     37   
                    _ => {
   38     38   
                        /* JsonParserGenerator.kt:452 */
   39     39   
                        items.push(
   40     40   
                            /* JsonParserGenerator.kt:361 */
   41     41   
                            ::aws_smithy_json::deserialize::token::expect_string_or_null(
   42     42   
                                tokens.next(),
   43     43   
                            )?
   44     44   
                            .map(|s|
   45     45   
                                /* JsonParserGenerator.kt:346 */s.to_unescaped().map(|u|
   46     46   
                                    /* JsonParserGenerator.kt:355 */u.into_owned()
   47     47   
                                /* JsonParserGenerator.kt:346 */) /* JsonParserGenerator.kt:361 */)
   48     48   
                            .transpose()?, /* JsonParserGenerator.kt:452 */
   49     49   
                        );
   50     50   
                        /* JsonParserGenerator.kt:450 */
   51     51   
                    } /* JsonParserGenerator.kt:446 */
   52     52   
                }
   53     53   
                /* JsonParserGenerator.kt:445 */
   54     54   
            }
   55         -
            /* JsonParserGenerator.kt:483 */
          55  +
            /* JsonParserGenerator.kt:476 */
   56     56   
            Ok(Some(items))
   57         -
            /* JsonParserGenerator.kt:750 */
          57  +
            /* JsonParserGenerator.kt:732 */
   58     58   
        }
   59         -
        /* JsonParserGenerator.kt:759 */
          59  +
        /* JsonParserGenerator.kt:741 */
   60     60   
        _ => {
   61         -
            /* JsonParserGenerator.kt:760 */
          61  +
            /* JsonParserGenerator.kt:742 */
   62     62   
            Err(
   63     63   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   64     64   
                    "expected start array or null",
   65     65   
                ),
   66     66   
            )
   67         -
            /* JsonParserGenerator.kt:759 */
   68         -
        } /* JsonParserGenerator.kt:749 */
          67  +
            /* JsonParserGenerator.kt:741 */
          68  +
        } /* JsonParserGenerator.kt:731 */
   69     69   
    }
   70     70   
    /* JsonParserGenerator.kt:435 */
   71     71   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_sparse_string_map.rs

@@ -1,1 +82,82 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/* JsonParserGenerator.kt:497 */
           2  +
/* JsonParserGenerator.kt:490 */
    3      3   
pub(crate) fn de_sparse_string_map<'a, I>(
    4      4   
    tokens: &mut ::std::iter::Peekable<I>,
    5      5   
    _value: &'a [u8],
    6      6   
) -> ::std::result::Result<
    7      7   
    Option<
    8      8   
        ::std::collections::HashMap<
    9      9   
            ::std::string::String,
   10     10   
            ::std::option::Option<::std::string::String>,
   11     11   
        >,
   12     12   
    >,
   13     13   
    ::aws_smithy_json::deserialize::error::DeserializeError,
   14     14   
>
   15     15   
where
   16     16   
    I: Iterator<
   17     17   
        Item = Result<
   18     18   
            ::aws_smithy_json::deserialize::Token<'a>,
   19     19   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   20     20   
        >,
   21     21   
    >,
   22     22   
{
   23         -
    /* JsonParserGenerator.kt:749 */
          23  +
    /* JsonParserGenerator.kt:731 */
   24     24   
    match tokens.next().transpose()? {
   25         -
        /* JsonParserGenerator.kt:750 */
          25  +
        /* JsonParserGenerator.kt:732 */
   26     26   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   27     27   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
   28         -
            /* JsonParserGenerator.kt:506 */
          28  +
            /* JsonParserGenerator.kt:499 */
   29     29   
            let mut map = ::std::collections::HashMap::new();
   30         -
            /* JsonParserGenerator.kt:721 */
          30  +
            /* JsonParserGenerator.kt:703 */
   31     31   
            loop {
   32         -
                /* JsonParserGenerator.kt:722 */
          32  +
                /* JsonParserGenerator.kt:704 */
   33     33   
                match tokens.next().transpose()? {
   34         -
                    /* JsonParserGenerator.kt:723 */
          34  +
                    /* JsonParserGenerator.kt:705 */
   35     35   
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   36     36   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   37         -
                        /* JsonParserGenerator.kt:508 */
          37  +
                        /* JsonParserGenerator.kt:501 */
   38     38   
                        let key =
   39     39   
                            /* JsonParserGenerator.kt:346 */key.to_unescaped().map(|u|
   40     40   
                                /* JsonParserGenerator.kt:355 */u.into_owned()
   41     41   
                            /* JsonParserGenerator.kt:346 */)
   42         -
                        /* JsonParserGenerator.kt:508 */?;
   43         -
                        /* JsonParserGenerator.kt:511 */
          42  +
                        /* JsonParserGenerator.kt:501 */?;
          43  +
                        /* JsonParserGenerator.kt:504 */
   44     44   
                        let value =
   45     45   
                            /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
   46     46   
                                /* JsonParserGenerator.kt:346 */s.to_unescaped().map(|u|
   47     47   
                                    /* JsonParserGenerator.kt:355 */u.into_owned()
   48     48   
                                /* JsonParserGenerator.kt:346 */)
   49     49   
                            /* JsonParserGenerator.kt:361 */).transpose()?
   50         -
                        /* JsonParserGenerator.kt:511 */;
   51         -
                        /* JsonParserGenerator.kt:515 */
          50  +
                        /* JsonParserGenerator.kt:504 */;
          51  +
                        /* JsonParserGenerator.kt:508 */
   52     52   
                        map.insert(key, value);
   53         -
                        /* JsonParserGenerator.kt:723 */
          53  +
                        /* JsonParserGenerator.kt:705 */
   54     54   
                    }
   55         -
                    /* JsonParserGenerator.kt:732 */
          55  +
                    /* JsonParserGenerator.kt:714 */
   56     56   
                    other => {
   57     57   
                        return Err(
   58     58   
                            ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   59     59   
                                format!("expected object key or end object, found: {other:?}"),
   60     60   
                            ),
   61     61   
                        )
   62         -
                    } /* JsonParserGenerator.kt:722 */
          62  +
                    } /* JsonParserGenerator.kt:704 */
   63     63   
                }
   64         -
                /* JsonParserGenerator.kt:721 */
          64  +
                /* JsonParserGenerator.kt:703 */
   65     65   
            }
   66         -
            /* JsonParserGenerator.kt:541 */
          66  +
            /* JsonParserGenerator.kt:523 */
   67     67   
            Ok(Some(map))
   68         -
            /* JsonParserGenerator.kt:750 */
          68  +
            /* JsonParserGenerator.kt:732 */
   69     69   
        }
   70         -
        /* JsonParserGenerator.kt:759 */
          70  +
        /* JsonParserGenerator.kt:741 */
   71     71   
        _ => {
   72         -
            /* JsonParserGenerator.kt:760 */
          72  +
            /* JsonParserGenerator.kt:742 */
   73     73   
            Err(
   74     74   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   75     75   
                    "expected start object or null",
   76     76   
                ),
   77     77   
            )
   78         -
            /* JsonParserGenerator.kt:759 */
   79         -
        } /* JsonParserGenerator.kt:749 */
          78  +
            /* JsonParserGenerator.kt:741 */
          79  +
        } /* JsonParserGenerator.kt:731 */
   80     80   
    }
   81         -
    /* JsonParserGenerator.kt:497 */
          81  +
    /* JsonParserGenerator.kt:490 */
   82     82   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_sparse_struct_map.rs

@@ -1,1 +78,78 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/* JsonParserGenerator.kt:497 */
           2  +
/* JsonParserGenerator.kt:490 */
    3      3   
pub(crate) fn de_sparse_struct_map<'a, I>(
    4      4   
    tokens: &mut ::std::iter::Peekable<I>,
    5      5   
    _value: &'a [u8],
    6      6   
) -> ::std::result::Result<
    7      7   
    Option<
    8      8   
        ::std::collections::HashMap<
    9      9   
            ::std::string::String,
   10     10   
            ::std::option::Option<crate::model::GreetingStruct>,
   11     11   
        >,
   12     12   
    >,
   13     13   
    ::aws_smithy_json::deserialize::error::DeserializeError,
   14     14   
>
   15     15   
where
   16     16   
    I: Iterator<
   17     17   
        Item = Result<
   18     18   
            ::aws_smithy_json::deserialize::Token<'a>,
   19     19   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   20     20   
        >,
   21     21   
    >,
   22     22   
{
   23         -
    /* JsonParserGenerator.kt:749 */
          23  +
    /* JsonParserGenerator.kt:731 */
   24     24   
    match tokens.next().transpose()? {
   25         -
        /* JsonParserGenerator.kt:750 */
          25  +
        /* JsonParserGenerator.kt:732 */
   26     26   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   27     27   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
   28         -
            /* JsonParserGenerator.kt:506 */
          28  +
            /* JsonParserGenerator.kt:499 */
   29     29   
            let mut map = ::std::collections::HashMap::new();
   30         -
            /* JsonParserGenerator.kt:721 */
          30  +
            /* JsonParserGenerator.kt:703 */
   31     31   
            loop {
   32         -
                /* JsonParserGenerator.kt:722 */
          32  +
                /* JsonParserGenerator.kt:704 */
   33     33   
                match tokens.next().transpose()? {
   34         -
                    /* JsonParserGenerator.kt:723 */
          34  +
                    /* JsonParserGenerator.kt:705 */
   35     35   
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   36     36   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   37         -
                        /* JsonParserGenerator.kt:508 */
          37  +
                        /* JsonParserGenerator.kt:501 */
   38     38   
                        let key =
   39     39   
                            /* JsonParserGenerator.kt:346 */key.to_unescaped().map(|u|
   40     40   
                                /* JsonParserGenerator.kt:355 */u.into_owned()
   41     41   
                            /* JsonParserGenerator.kt:346 */)
   42         -
                        /* JsonParserGenerator.kt:508 */?;
   43         -
                        /* JsonParserGenerator.kt:511 */
          42  +
                        /* JsonParserGenerator.kt:501 */?;
          43  +
                        /* JsonParserGenerator.kt:504 */
   44     44   
                        let value =
   45         -
                            /* JsonParserGenerator.kt:581 */crate::protocol_serde::shape_greeting_struct::de_greeting_struct(tokens, _value)?
   46         -
                        /* JsonParserGenerator.kt:511 */;
   47         -
                        /* JsonParserGenerator.kt:515 */
          45  +
                            /* JsonParserGenerator.kt:563 */crate::protocol_serde::shape_greeting_struct::de_greeting_struct(tokens, _value)?
          46  +
                        /* JsonParserGenerator.kt:504 */;
          47  +
                        /* JsonParserGenerator.kt:508 */
   48     48   
                        map.insert(key, value);
   49         -
                        /* JsonParserGenerator.kt:723 */
          49  +
                        /* JsonParserGenerator.kt:705 */
   50     50   
                    }
   51         -
                    /* JsonParserGenerator.kt:732 */
          51  +
                    /* JsonParserGenerator.kt:714 */
   52     52   
                    other => {
   53     53   
                        return Err(
   54     54   
                            ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   55     55   
                                format!("expected object key or end object, found: {other:?}"),
   56     56   
                            ),
   57     57   
                        )
   58         -
                    } /* JsonParserGenerator.kt:722 */
          58  +
                    } /* JsonParserGenerator.kt:704 */
   59     59   
                }
   60         -
                /* JsonParserGenerator.kt:721 */
          60  +
                /* JsonParserGenerator.kt:703 */
   61     61   
            }
   62         -
            /* JsonParserGenerator.kt:541 */
          62  +
            /* JsonParserGenerator.kt:523 */
   63     63   
            Ok(Some(map))
   64         -
            /* JsonParserGenerator.kt:750 */
          64  +
            /* JsonParserGenerator.kt:732 */
   65     65   
        }
   66         -
        /* JsonParserGenerator.kt:759 */
          66  +
        /* JsonParserGenerator.kt:741 */
   67     67   
        _ => {
   68         -
            /* JsonParserGenerator.kt:760 */
          68  +
            /* JsonParserGenerator.kt:742 */
   69     69   
            Err(
   70     70   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   71     71   
                    "expected start object or null",
   72     72   
                ),
   73     73   
            )
   74         -
            /* JsonParserGenerator.kt:759 */
   75         -
        } /* JsonParserGenerator.kt:749 */
          74  +
            /* JsonParserGenerator.kt:741 */
          75  +
        } /* JsonParserGenerator.kt:731 */
   76     76   
    }
   77         -
    /* JsonParserGenerator.kt:497 */
          77  +
    /* JsonParserGenerator.kt:490 */
   78     78   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_string_list.rs

@@ -1,1 +79,77 @@
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => {
   23     23   
            /* JsonParserGenerator.kt:444 */
   24     24   
            let mut items = Vec::new();
   25     25   
            /* JsonParserGenerator.kt:445 */
   26     26   
            loop {
   27     27   
                /* JsonParserGenerator.kt:446 */
   28     28   
                match tokens.peek() {
   29     29   
                    /* JsonParserGenerator.kt:447 */
   30     30   
                    Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => {
   31     31   
                        /* JsonParserGenerator.kt:448 */
   32     32   
                        tokens.next().transpose().unwrap();
   33     33   
                        break;
   34     34   
                        /* JsonParserGenerator.kt:447 */
   35     35   
                    }
   36     36   
                    /* JsonParserGenerator.kt:450 */
   37     37   
                    _ => {
   38     38   
                        /* JsonParserGenerator.kt:456 */
   39     39   
                        let value =
   40     40   
                            /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
   41     41   
                                /* JsonParserGenerator.kt:346 */s.to_unescaped().map(|u|
   42     42   
                                    /* JsonParserGenerator.kt:355 */u.into_owned()
   43     43   
                                /* JsonParserGenerator.kt:346 */)
   44     44   
                            /* JsonParserGenerator.kt:361 */).transpose()?
   45     45   
                        /* JsonParserGenerator.kt:456 */;
   46     46   
                        /* JsonParserGenerator.kt:459 */
   47     47   
                        if let Some(value) = value {
   48     48   
                            items.push(value);
   49         -
                        }
   50         -
                        /* JsonParserGenerator.kt:467 */
   51         -
                        else {
          49  +
                        } else {
   52     50   
                            return Err(
   53     51   
                                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   54     52   
                                    "dense list cannot contain null values",
   55     53   
                                ),
   56     54   
                            );
   57     55   
                        }
   58     56   
                        /* JsonParserGenerator.kt:450 */
   59     57   
                    } /* JsonParserGenerator.kt:446 */
   60     58   
                }
   61     59   
                /* JsonParserGenerator.kt:445 */
   62     60   
            }
   63         -
            /* JsonParserGenerator.kt:483 */
          61  +
            /* JsonParserGenerator.kt:476 */
   64     62   
            Ok(Some(items))
   65         -
            /* JsonParserGenerator.kt:750 */
          63  +
            /* JsonParserGenerator.kt:732 */
   66     64   
        }
   67         -
        /* JsonParserGenerator.kt:759 */
          65  +
        /* JsonParserGenerator.kt:741 */
   68     66   
        _ => {
   69         -
            /* JsonParserGenerator.kt:760 */
          67  +
            /* JsonParserGenerator.kt:742 */
   70     68   
            Err(
   71     69   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   72     70   
                    "expected start array or null",
   73     71   
                ),
   74     72   
            )
   75         -
            /* JsonParserGenerator.kt:759 */
   76         -
        } /* JsonParserGenerator.kt:749 */
          73  +
            /* JsonParserGenerator.kt:741 */
          74  +
        } /* JsonParserGenerator.kt:731 */
   77     75   
    }
   78     76   
    /* JsonParserGenerator.kt:435 */
   79     77   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_string_map.rs

@@ -1,1 +88,88 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/* JsonParserGenerator.kt:497 */
           2  +
/* JsonParserGenerator.kt:490 */
    3      3   
pub(crate) fn de_string_map<'a, I>(
    4      4   
    tokens: &mut ::std::iter::Peekable<I>,
    5      5   
    _value: &'a [u8],
    6      6   
) -> ::std::result::Result<
    7      7   
    Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
   23         -
            /* JsonParserGenerator.kt:506 */
          23  +
            /* JsonParserGenerator.kt:499 */
   24     24   
            let mut map = ::std::collections::HashMap::new();
   25         -
            /* JsonParserGenerator.kt:721 */
          25  +
            /* JsonParserGenerator.kt:703 */
   26     26   
            loop {
   27         -
                /* JsonParserGenerator.kt:722 */
          27  +
                /* JsonParserGenerator.kt:704 */
   28     28   
                match tokens.next().transpose()? {
   29         -
                    /* JsonParserGenerator.kt:723 */
          29  +
                    /* JsonParserGenerator.kt:705 */
   30     30   
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   31     31   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   32         -
                        /* JsonParserGenerator.kt:508 */
          32  +
                        /* JsonParserGenerator.kt:501 */
   33     33   
                        let key =
   34     34   
                            /* JsonParserGenerator.kt:346 */key.to_unescaped().map(|u|
   35     35   
                                /* JsonParserGenerator.kt:355 */u.into_owned()
   36     36   
                            /* JsonParserGenerator.kt:346 */)
   37         -
                        /* JsonParserGenerator.kt:508 */?;
   38         -
                        /* JsonParserGenerator.kt:511 */
          37  +
                        /* JsonParserGenerator.kt:501 */?;
          38  +
                        /* JsonParserGenerator.kt:504 */
   39     39   
                        let value =
   40     40   
                            /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
   41     41   
                                /* JsonParserGenerator.kt:346 */s.to_unescaped().map(|u|
   42     42   
                                    /* JsonParserGenerator.kt:355 */u.into_owned()
   43     43   
                                /* JsonParserGenerator.kt:346 */)
   44     44   
                            /* JsonParserGenerator.kt:361 */).transpose()?
   45         -
                        /* JsonParserGenerator.kt:511 */;
   46         -
                        /* JsonParserGenerator.kt:518 */
          45  +
                        /* JsonParserGenerator.kt:504 */;
          46  +
                        /* JsonParserGenerator.kt:510 */
   47     47   
                        match value {
   48     48   
                            Some(value) => {
   49     49   
                                map.insert(key, value);
   50     50   
                            }
   51     51   
                            None => {
   52     52   
                                return Err(
   53     53   
                                    ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   54     54   
                                        "dense map cannot contain null values",
   55     55   
                                    ),
   56     56   
                                )
   57     57   
                            }
   58     58   
                        }
   59         -
                        /* JsonParserGenerator.kt:723 */
          59  +
                        /* JsonParserGenerator.kt:705 */
   60     60   
                    }
   61         -
                    /* JsonParserGenerator.kt:732 */
          61  +
                    /* JsonParserGenerator.kt:714 */
   62     62   
                    other => {
   63     63   
                        return Err(
   64     64   
                            ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   65     65   
                                format!("expected object key or end object, found: {other:?}"),
   66     66   
                            ),
   67     67   
                        )
   68         -
                    } /* JsonParserGenerator.kt:722 */
          68  +
                    } /* JsonParserGenerator.kt:704 */
   69     69   
                }
   70         -
                /* JsonParserGenerator.kt:721 */
          70  +
                /* JsonParserGenerator.kt:703 */
   71     71   
            }
   72         -
            /* JsonParserGenerator.kt:541 */
          72  +
            /* JsonParserGenerator.kt:523 */
   73     73   
            Ok(Some(map))
   74         -
            /* JsonParserGenerator.kt:750 */
          74  +
            /* JsonParserGenerator.kt:732 */
   75     75   
        }
   76         -
        /* JsonParserGenerator.kt:759 */
          76  +
        /* JsonParserGenerator.kt:741 */
   77     77   
        _ => {
   78         -
            /* JsonParserGenerator.kt:760 */
          78  +
            /* JsonParserGenerator.kt:742 */
   79     79   
            Err(
   80     80   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   81     81   
                    "expected start object or null",
   82     82   
                ),
   83     83   
            )
   84         -
            /* JsonParserGenerator.kt:759 */
   85         -
        } /* JsonParserGenerator.kt:749 */
          84  +
            /* JsonParserGenerator.kt:741 */
          85  +
        } /* JsonParserGenerator.kt:731 */
   86     86   
    }
   87         -
    /* JsonParserGenerator.kt:497 */
          87  +
    /* JsonParserGenerator.kt:490 */
   88     88   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_string_set.rs

@@ -1,1 +81,79 @@
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => {
   23     23   
            /* JsonParserGenerator.kt:444 */
   24     24   
            let mut items = Vec::new();
   25     25   
            /* JsonParserGenerator.kt:445 */
   26     26   
            loop {
   27     27   
                /* JsonParserGenerator.kt:446 */
   28     28   
                match tokens.peek() {
   29     29   
                    /* JsonParserGenerator.kt:447 */
   30     30   
                    Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => {
   31     31   
                        /* JsonParserGenerator.kt:448 */
   32     32   
                        tokens.next().transpose().unwrap();
   33     33   
                        break;
   34     34   
                        /* JsonParserGenerator.kt:447 */
   35     35   
                    }
   36     36   
                    /* JsonParserGenerator.kt:450 */
   37     37   
                    _ => {
   38     38   
                        /* JsonParserGenerator.kt:456 */
   39     39   
                        let value =
   40     40   
                            /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
   41     41   
                                /* JsonParserGenerator.kt:346 */s.to_unescaped().map(|u|
   42     42   
                                    /* JsonParserGenerator.kt:355 */u.into_owned()
   43     43   
                                /* JsonParserGenerator.kt:346 */)
   44     44   
                            /* JsonParserGenerator.kt:361 */).transpose()?
   45     45   
                        /* JsonParserGenerator.kt:456 */;
   46     46   
                        /* JsonParserGenerator.kt:459 */
   47     47   
                        if let Some(value) = value {
   48     48   
                            items.push(value);
   49         -
                        }
   50         -
                        /* JsonParserGenerator.kt:467 */
   51         -
                        else {
          49  +
                        } else {
   52     50   
                            return Err(
   53     51   
                                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   54     52   
                                    "dense list cannot contain null values",
   55     53   
                                ),
   56     54   
                            );
   57     55   
                        }
   58     56   
                        /* JsonParserGenerator.kt:450 */
   59     57   
                    } /* JsonParserGenerator.kt:446 */
   60     58   
                }
   61     59   
                /* JsonParserGenerator.kt:445 */
   62     60   
            }
   63         -
            /* JsonParserGenerator.kt:481 */
          61  +
            /* JsonParserGenerator.kt:474 */
   64     62   
            Ok(Some(
   65     63   
                crate::unconstrained::string_set_unconstrained::StringSetUnconstrained(items),
   66     64   
            ))
   67         -
            /* JsonParserGenerator.kt:750 */
          65  +
            /* JsonParserGenerator.kt:732 */
   68     66   
        }
   69         -
        /* JsonParserGenerator.kt:759 */
          67  +
        /* JsonParserGenerator.kt:741 */
   70     68   
        _ => {
   71         -
            /* JsonParserGenerator.kt:760 */
          69  +
            /* JsonParserGenerator.kt:742 */
   72     70   
            Err(
   73     71   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   74     72   
                    "expected start array or null",
   75     73   
                ),
   76     74   
            )
   77         -
            /* JsonParserGenerator.kt:759 */
   78         -
        } /* JsonParserGenerator.kt:749 */
          75  +
            /* JsonParserGenerator.kt:741 */
          76  +
        } /* JsonParserGenerator.kt:731 */
   79     77   
    }
   80     78   
    /* JsonParserGenerator.kt:435 */
   81     79   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_structure_list.rs

@@ -1,1 +75,73 @@
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => {
   23     23   
            /* JsonParserGenerator.kt:444 */
   24     24   
            let mut items = Vec::new();
   25     25   
            /* JsonParserGenerator.kt:445 */
   26     26   
            loop {
   27     27   
                /* JsonParserGenerator.kt:446 */
   28     28   
                match tokens.peek() {
   29     29   
                    /* JsonParserGenerator.kt:447 */
   30     30   
                    Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => {
   31     31   
                        /* JsonParserGenerator.kt:448 */
   32     32   
                        tokens.next().transpose().unwrap();
   33     33   
                        break;
   34     34   
                        /* JsonParserGenerator.kt:447 */
   35     35   
                    }
   36     36   
                    /* JsonParserGenerator.kt:450 */
   37     37   
                    _ => {
   38     38   
                        /* JsonParserGenerator.kt:456 */
   39     39   
                        let value =
   40         -
                            /* JsonParserGenerator.kt:581 */crate::protocol_serde::shape_structure_list_member::de_structure_list_member(tokens, _value)?
          40  +
                            /* JsonParserGenerator.kt:563 */crate::protocol_serde::shape_structure_list_member::de_structure_list_member(tokens, _value)?
   41     41   
                        /* JsonParserGenerator.kt:456 */;
   42     42   
                        /* JsonParserGenerator.kt:459 */
   43     43   
                        if let Some(value) = value {
   44     44   
                            items.push(value);
   45         -
                        }
   46         -
                        /* JsonParserGenerator.kt:467 */
   47         -
                        else {
          45  +
                        } else {
   48     46   
                            return Err(
   49     47   
                                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   50     48   
                                    "dense list cannot contain null values",
   51     49   
                                ),
   52     50   
                            );
   53     51   
                        }
   54     52   
                        /* JsonParserGenerator.kt:450 */
   55     53   
                    } /* JsonParserGenerator.kt:446 */
   56     54   
                }
   57     55   
                /* JsonParserGenerator.kt:445 */
   58     56   
            }
   59         -
            /* JsonParserGenerator.kt:483 */
          57  +
            /* JsonParserGenerator.kt:476 */
   60     58   
            Ok(Some(items))
   61         -
            /* JsonParserGenerator.kt:750 */
          59  +
            /* JsonParserGenerator.kt:732 */
   62     60   
        }
   63         -
        /* JsonParserGenerator.kt:759 */
          61  +
        /* JsonParserGenerator.kt:741 */
   64     62   
        _ => {
   65         -
            /* JsonParserGenerator.kt:760 */
          63  +
            /* JsonParserGenerator.kt:742 */
   66     64   
            Err(
   67     65   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   68     66   
                    "expected start array or null",
   69     67   
                ),
   70     68   
            )
   71         -
            /* JsonParserGenerator.kt:759 */
   72         -
        } /* JsonParserGenerator.kt:749 */
          69  +
            /* JsonParserGenerator.kt:741 */
          70  +
        } /* JsonParserGenerator.kt:731 */
   73     71   
    }
   74     72   
    /* JsonParserGenerator.kt:435 */
   75     73   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_structure_list_member.rs

@@ -1,1 +114,114 @@
   14     14   
    if let Some(var_2) = &input.b {
   15     15   
        /* JsonSerializerGenerator.kt:425 */
   16     16   
        object.key("other").string(var_2.as_str());
   17     17   
        /* JsonSerializerGenerator.kt:384 */
   18     18   
    }
   19     19   
    /* JsonSerializerGenerator.kt:374 */
   20     20   
    Ok(())
   21     21   
    /* JsonSerializerGenerator.kt:360 */
   22     22   
}
   23     23   
   24         -
/* JsonParserGenerator.kt:553 */
          24  +
/* JsonParserGenerator.kt:535 */
   25     25   
pub(crate) fn de_structure_list_member<'a, I>(
   26     26   
    tokens: &mut ::std::iter::Peekable<I>,
   27     27   
    _value: &'a [u8],
   28     28   
) -> ::std::result::Result<
   29     29   
    Option<crate::model::StructureListMember>,
   30     30   
    ::aws_smithy_json::deserialize::error::DeserializeError,
   31     31   
>
   32     32   
where
   33     33   
    I: Iterator<
   34     34   
        Item = Result<
   35     35   
            ::aws_smithy_json::deserialize::Token<'a>,
   36     36   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   37     37   
        >,
   38     38   
    >,
   39     39   
{
   40         -
    /* JsonParserGenerator.kt:749 */
          40  +
    /* JsonParserGenerator.kt:731 */
   41     41   
    match tokens.next().transpose()? {
   42         -
        /* JsonParserGenerator.kt:750 */
          42  +
        /* JsonParserGenerator.kt:732 */
   43     43   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   44     44   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
   45     45   
            /* RustType.kt:534 */
   46     46   
            #[allow(unused_mut)]
   47         -
            /* JsonParserGenerator.kt:563 */
          47  +
            /* JsonParserGenerator.kt:545 */
   48     48   
            let mut builder = crate::model::structure_list_member::Builder::default();
   49         -
            /* JsonParserGenerator.kt:721 */
          49  +
            /* JsonParserGenerator.kt:703 */
   50     50   
            loop {
   51         -
                /* JsonParserGenerator.kt:722 */
          51  +
                /* JsonParserGenerator.kt:704 */
   52     52   
                match tokens.next().transpose()? {
   53         -
                    /* JsonParserGenerator.kt:723 */
          53  +
                    /* JsonParserGenerator.kt:705 */
   54     54   
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   55     55   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   56     56   
                        /* JsonParserGenerator.kt:265 */
   57     57   
                        match key.to_unescaped()?.as_ref() {
   58     58   
                            /* JsonParserGenerator.kt:267 */
   59     59   
                            "value" => {
   60     60   
                                /* JsonParserGenerator.kt:277 */
   61     61   
                                builder = builder.set_a(
   62     62   
                                    /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
   63     63   
                                        /* JsonParserGenerator.kt:346 */s.to_unescaped().map(|u|
   64     64   
                                            /* JsonParserGenerator.kt:355 */u.into_owned()
   65     65   
                                        /* JsonParserGenerator.kt:346 */)
   66     66   
                                    /* JsonParserGenerator.kt:361 */).transpose()?
   67     67   
                                /* JsonParserGenerator.kt:277 */);
   68     68   
                                /* JsonParserGenerator.kt:267 */
   69     69   
                            }
   70     70   
                            /* JsonParserGenerator.kt:267 */
   71     71   
                            "other" => {
   72     72   
                                /* JsonParserGenerator.kt:277 */
   73     73   
                                builder = builder.set_b(
   74     74   
                                    /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
   75     75   
                                        /* JsonParserGenerator.kt:346 */s.to_unescaped().map(|u|
   76     76   
                                            /* JsonParserGenerator.kt:355 */u.into_owned()
   77     77   
                                        /* JsonParserGenerator.kt:346 */)
   78     78   
                                    /* JsonParserGenerator.kt:361 */).transpose()?
   79     79   
                                /* JsonParserGenerator.kt:277 */);
   80     80   
                                /* JsonParserGenerator.kt:267 */
   81     81   
                            }
   82     82   
                            /* JsonParserGenerator.kt:295 */
   83     83   
                            _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, /* JsonParserGenerator.kt:265 */
   84     84   
                        }
   85         -
                        /* JsonParserGenerator.kt:723 */
          85  +
                        /* JsonParserGenerator.kt:705 */
   86     86   
                    }
   87         -
                    /* JsonParserGenerator.kt:732 */
          87  +
                    /* JsonParserGenerator.kt:714 */
   88     88   
                    other => {
   89     89   
                        return Err(
   90     90   
                            ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   91     91   
                                format!("expected object key or end object, found: {other:?}"),
   92     92   
                            ),
   93     93   
                        )
   94         -
                    } /* JsonParserGenerator.kt:722 */
          94  +
                    } /* JsonParserGenerator.kt:704 */
   95     95   
                }
   96         -
                /* JsonParserGenerator.kt:721 */
          96  +
                /* JsonParserGenerator.kt:703 */
   97     97   
            }
   98         -
            /* JsonParserGenerator.kt:577 */
          98  +
            /* JsonParserGenerator.kt:559 */
   99     99   
            Ok(Some(builder.build()))
  100         -
            /* JsonParserGenerator.kt:750 */
         100  +
            /* JsonParserGenerator.kt:732 */
  101    101   
        }
  102         -
        /* JsonParserGenerator.kt:759 */
         102  +
        /* JsonParserGenerator.kt:741 */
  103    103   
        _ => {
  104         -
            /* JsonParserGenerator.kt:760 */
         104  +
            /* JsonParserGenerator.kt:742 */
  105    105   
            Err(
  106    106   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
  107    107   
                    "expected start object or null",
  108    108   
                ),
  109    109   
            )
  110         -
            /* JsonParserGenerator.kt:759 */
  111         -
        } /* JsonParserGenerator.kt:749 */
         110  +
            /* JsonParserGenerator.kt:741 */
         111  +
        } /* JsonParserGenerator.kt:731 */
  112    112   
    }
  113         -
    /* JsonParserGenerator.kt:553 */
         113  +
    /* JsonParserGenerator.kt:535 */
  114    114   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_test_body_structure.rs

@@ -91,91 +185,185 @@
  111    111   
    crate::input::test_body_structure_input::Builder,
  112    112   
    ::aws_smithy_json::deserialize::error::DeserializeError,
  113    113   
> {
  114    114   
    /* JsonParserGenerator.kt:158 */
  115    115   
    let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(
  116    116   
        crate::protocol_serde::or_empty_doc(_value),
  117    117   
    )
  118    118   
    .peekable();
  119    119   
    let tokens = &mut tokens_owned;
  120    120   
    ::aws_smithy_json::deserialize::token::expect_start_object(tokens.next())?;
  121         -
    /* JsonParserGenerator.kt:721 */
         121  +
    /* JsonParserGenerator.kt:703 */
  122    122   
    loop {
  123         -
        /* JsonParserGenerator.kt:722 */
         123  +
        /* JsonParserGenerator.kt:704 */
  124    124   
        match tokens.next().transpose()? {
  125         -
            /* JsonParserGenerator.kt:723 */
         125  +
            /* JsonParserGenerator.kt:705 */
  126    126   
            Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
  127    127   
            Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
  128    128   
                /* JsonParserGenerator.kt:265 */
  129    129   
                match key.to_unescaped()?.as_ref() {
  130    130   
                    /* JsonParserGenerator.kt:267 */
  131    131   
                    "testConfig" => {
  132    132   
                        /* JsonParserGenerator.kt:277 */
  133    133   
                        builder = builder.set_test_config(
  134         -
                            /* JsonParserGenerator.kt:581 */
         134  +
                            /* JsonParserGenerator.kt:563 */
  135    135   
                            crate::protocol_serde::shape_test_config::de_test_config(
  136    136   
                                tokens, _value,
  137    137   
                            )?, /* JsonParserGenerator.kt:277 */
  138    138   
                        );
  139    139   
                        /* JsonParserGenerator.kt:267 */
  140    140   
                    }
  141    141   
                    /* JsonParserGenerator.kt:295 */
  142    142   
                    _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, /* JsonParserGenerator.kt:265 */
  143    143   
                }
  144         -
                /* JsonParserGenerator.kt:723 */
         144  +
                /* JsonParserGenerator.kt:705 */
  145    145   
            }
  146         -
            /* JsonParserGenerator.kt:732 */
         146  +
            /* JsonParserGenerator.kt:714 */
  147    147   
            other => {
  148    148   
                return Err(
  149    149   
                    ::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
  150    150   
                        "expected object key or end object, found: {other:?}"
  151    151   
                    )),
  152    152   
                )
  153         -
            } /* JsonParserGenerator.kt:722 */
         153  +
            } /* JsonParserGenerator.kt:704 */
  154    154   
        }
  155         -
        /* JsonParserGenerator.kt:721 */
         155  +
        /* JsonParserGenerator.kt:703 */
  156    156   
    }
  157    157   
    /* JsonParserGenerator.kt:255 */
  158    158   
    if tokens.next().is_some() {
  159    159   
        /* JsonParserGenerator.kt:256 */
  160    160   
        return Err(
  161    161   
            ::aws_smithy_json::deserialize::error::DeserializeError::custom(
  162    162   
                "found more JSON tokens after completing parsing",
  163    163   
            ),
  164    164   
        );
  165    165   
        /* JsonParserGenerator.kt:255 */

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_test_config.rs

@@ -1,1 +100,100 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/* JsonParserGenerator.kt:553 */
           2  +
/* JsonParserGenerator.kt:535 */
    3      3   
pub(crate) fn de_test_config<'a, I>(
    4      4   
    tokens: &mut ::std::iter::Peekable<I>,
    5      5   
    _value: &'a [u8],
    6      6   
) -> ::std::result::Result<
    7      7   
    Option<crate::model::TestConfig>,
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
   23     23   
            /* RustType.kt:534 */
   24     24   
            #[allow(unused_mut)]
   25         -
            /* JsonParserGenerator.kt:563 */
          25  +
            /* JsonParserGenerator.kt:545 */
   26     26   
            let mut builder = crate::model::test_config::Builder::default();
   27         -
            /* JsonParserGenerator.kt:721 */
          27  +
            /* JsonParserGenerator.kt:703 */
   28     28   
            loop {
   29         -
                /* JsonParserGenerator.kt:722 */
          29  +
                /* JsonParserGenerator.kt:704 */
   30     30   
                match tokens.next().transpose()? {
   31         -
                    /* JsonParserGenerator.kt:723 */
          31  +
                    /* JsonParserGenerator.kt:705 */
   32     32   
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   33     33   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   34     34   
                        /* JsonParserGenerator.kt:265 */
   35     35   
                        match key.to_unescaped()?.as_ref() {
   36     36   
                            /* JsonParserGenerator.kt:267 */
   37     37   
                            "timeout" => {
   38     38   
                                /* JsonParserGenerator.kt:277 */
   39     39   
                                builder = builder.set_timeout(
   40     40   
                                    /* JsonParserGenerator.kt:372 */
   41     41   
                                    ::aws_smithy_json::deserialize::token::expect_number_or_null(
   42     42   
                                        tokens.next(),
   43     43   
                                    )?
   44     44   
                                    .map(i32::try_from)
   45     45   
                                    .transpose()?, /* JsonParserGenerator.kt:277 */
   46     46   
                                );
   47     47   
                                /* JsonParserGenerator.kt:267 */
   48     48   
                            }
   49     49   
                            /* JsonParserGenerator.kt:295 */
   50     50   
                            _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, /* JsonParserGenerator.kt:265 */
   51     51   
                        }
   52         -
                        /* JsonParserGenerator.kt:723 */
          52  +
                        /* JsonParserGenerator.kt:705 */
   53     53   
                    }
   54         -
                    /* JsonParserGenerator.kt:732 */
          54  +
                    /* JsonParserGenerator.kt:714 */
   55     55   
                    other => {
   56     56   
                        return Err(
   57     57   
                            ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   58     58   
                                format!("expected object key or end object, found: {other:?}"),
   59     59   
                            ),
   60     60   
                        )
   61         -
                    } /* JsonParserGenerator.kt:722 */
          61  +
                    } /* JsonParserGenerator.kt:704 */
   62     62   
                }
   63         -
                /* JsonParserGenerator.kt:721 */
          63  +
                /* JsonParserGenerator.kt:703 */
   64     64   
            }
   65         -
            /* JsonParserGenerator.kt:577 */
          65  +
            /* JsonParserGenerator.kt:559 */
   66     66   
            Ok(Some(builder.build()))
   67         -
            /* JsonParserGenerator.kt:750 */
          67  +
            /* JsonParserGenerator.kt:732 */
   68     68   
        }
   69         -
        /* JsonParserGenerator.kt:759 */
          69  +
        /* JsonParserGenerator.kt:741 */
   70     70   
        _ => {
   71         -
            /* JsonParserGenerator.kt:760 */
          71  +
            /* JsonParserGenerator.kt:742 */
   72     72   
            Err(
   73     73   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   74     74   
                    "expected start object or null",
   75     75   
                ),
   76     76   
            )
   77         -
            /* JsonParserGenerator.kt:759 */
   78         -
        } /* JsonParserGenerator.kt:749 */
          77  +
            /* JsonParserGenerator.kt:741 */
          78  +
        } /* JsonParserGenerator.kt:731 */
   79     79   
    }
   80         -
    /* JsonParserGenerator.kt:553 */
          80  +
    /* JsonParserGenerator.kt:535 */
   81     81   
}
   82     82   
   83     83   
/* JsonSerializerGenerator.kt:360 */
   84     84   
pub fn ser_test_config(
   85     85   
    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
   86     86   
    input: &crate::model::TestConfig,
   87     87   
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
   88     88   
    /* JsonSerializerGenerator.kt:384 */
   89     89   
    if let Some(var_1) = &input.timeout {
   90     90   
        /* JsonSerializerGenerator.kt:444 */

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_test_string_list.rs

@@ -1,1 +79,77 @@
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => {
   23     23   
            /* JsonParserGenerator.kt:444 */
   24     24   
            let mut items = Vec::new();
   25     25   
            /* JsonParserGenerator.kt:445 */
   26     26   
            loop {
   27     27   
                /* JsonParserGenerator.kt:446 */
   28     28   
                match tokens.peek() {
   29     29   
                    /* JsonParserGenerator.kt:447 */
   30     30   
                    Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => {
   31     31   
                        /* JsonParserGenerator.kt:448 */
   32     32   
                        tokens.next().transpose().unwrap();
   33     33   
                        break;
   34     34   
                        /* JsonParserGenerator.kt:447 */
   35     35   
                    }
   36     36   
                    /* JsonParserGenerator.kt:450 */
   37     37   
                    _ => {
   38     38   
                        /* JsonParserGenerator.kt:456 */
   39     39   
                        let value =
   40     40   
                            /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
   41     41   
                                /* JsonParserGenerator.kt:346 */s.to_unescaped().map(|u|
   42     42   
                                    /* JsonParserGenerator.kt:355 */u.into_owned()
   43     43   
                                /* JsonParserGenerator.kt:346 */)
   44     44   
                            /* JsonParserGenerator.kt:361 */).transpose()?
   45     45   
                        /* JsonParserGenerator.kt:456 */;
   46     46   
                        /* JsonParserGenerator.kt:459 */
   47     47   
                        if let Some(value) = value {
   48     48   
                            items.push(value);
   49         -
                        }
   50         -
                        /* JsonParserGenerator.kt:467 */
   51         -
                        else {
          49  +
                        } else {
   52     50   
                            return Err(
   53     51   
                                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   54     52   
                                    "dense list cannot contain null values",
   55     53   
                                ),
   56     54   
                            );
   57     55   
                        }
   58     56   
                        /* JsonParserGenerator.kt:450 */
   59     57   
                    } /* JsonParserGenerator.kt:446 */
   60     58   
                }
   61     59   
                /* JsonParserGenerator.kt:445 */
   62     60   
            }
   63         -
            /* JsonParserGenerator.kt:483 */
          61  +
            /* JsonParserGenerator.kt:476 */
   64     62   
            Ok(Some(items))
   65         -
            /* JsonParserGenerator.kt:750 */
          63  +
            /* JsonParserGenerator.kt:732 */
   66     64   
        }
   67         -
        /* JsonParserGenerator.kt:759 */
          65  +
        /* JsonParserGenerator.kt:741 */
   68     66   
        _ => {
   69         -
            /* JsonParserGenerator.kt:760 */
          67  +
            /* JsonParserGenerator.kt:742 */
   70     68   
            Err(
   71     69   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   72     70   
                    "expected start array or null",
   73     71   
                ),
   74     72   
            )
   75         -
            /* JsonParserGenerator.kt:759 */
   76         -
        } /* JsonParserGenerator.kt:749 */
          73  +
            /* JsonParserGenerator.kt:741 */
          74  +
        } /* JsonParserGenerator.kt:731 */
   77     75   
    }
   78     76   
    /* JsonParserGenerator.kt:435 */
   79     77   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_test_string_map.rs

@@ -1,1 +88,88 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/* JsonParserGenerator.kt:497 */
           2  +
/* JsonParserGenerator.kt:490 */
    3      3   
pub(crate) fn de_test_string_map<'a, I>(
    4      4   
    tokens: &mut ::std::iter::Peekable<I>,
    5      5   
    _value: &'a [u8],
    6      6   
) -> ::std::result::Result<
    7      7   
    Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
   23         -
            /* JsonParserGenerator.kt:506 */
          23  +
            /* JsonParserGenerator.kt:499 */
   24     24   
            let mut map = ::std::collections::HashMap::new();
   25         -
            /* JsonParserGenerator.kt:721 */
          25  +
            /* JsonParserGenerator.kt:703 */
   26     26   
            loop {
   27         -
                /* JsonParserGenerator.kt:722 */
          27  +
                /* JsonParserGenerator.kt:704 */
   28     28   
                match tokens.next().transpose()? {
   29         -
                    /* JsonParserGenerator.kt:723 */
          29  +
                    /* JsonParserGenerator.kt:705 */
   30     30   
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   31     31   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   32         -
                        /* JsonParserGenerator.kt:508 */
          32  +
                        /* JsonParserGenerator.kt:501 */
   33     33   
                        let key =
   34     34   
                            /* JsonParserGenerator.kt:346 */key.to_unescaped().map(|u|
   35     35   
                                /* JsonParserGenerator.kt:355 */u.into_owned()
   36     36   
                            /* JsonParserGenerator.kt:346 */)
   37         -
                        /* JsonParserGenerator.kt:508 */?;
   38         -
                        /* JsonParserGenerator.kt:511 */
          37  +
                        /* JsonParserGenerator.kt:501 */?;
          38  +
                        /* JsonParserGenerator.kt:504 */
   39     39   
                        let value =
   40     40   
                            /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
   41     41   
                                /* JsonParserGenerator.kt:346 */s.to_unescaped().map(|u|
   42     42   
                                    /* JsonParserGenerator.kt:355 */u.into_owned()
   43     43   
                                /* JsonParserGenerator.kt:346 */)
   44     44   
                            /* JsonParserGenerator.kt:361 */).transpose()?
   45         -
                        /* JsonParserGenerator.kt:511 */;
   46         -
                        /* JsonParserGenerator.kt:518 */
          45  +
                        /* JsonParserGenerator.kt:504 */;
          46  +
                        /* JsonParserGenerator.kt:510 */
   47     47   
                        match value {
   48     48   
                            Some(value) => {
   49     49   
                                map.insert(key, value);
   50     50   
                            }
   51     51   
                            None => {
   52     52   
                                return Err(
   53     53   
                                    ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   54     54   
                                        "dense map cannot contain null values",
   55     55   
                                    ),
   56     56   
                                )
   57     57   
                            }
   58     58   
                        }
   59         -
                        /* JsonParserGenerator.kt:723 */
          59  +
                        /* JsonParserGenerator.kt:705 */
   60     60   
                    }
   61         -
                    /* JsonParserGenerator.kt:732 */
          61  +
                    /* JsonParserGenerator.kt:714 */
   62     62   
                    other => {
   63     63   
                        return Err(
   64     64   
                            ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   65     65   
                                format!("expected object key or end object, found: {other:?}"),
   66     66   
                            ),
   67     67   
                        )
   68         -
                    } /* JsonParserGenerator.kt:722 */
          68  +
                    } /* JsonParserGenerator.kt:704 */
   69     69   
                }
   70         -
                /* JsonParserGenerator.kt:721 */
          70  +
                /* JsonParserGenerator.kt:703 */
   71     71   
            }
   72         -
            /* JsonParserGenerator.kt:541 */
          72  +
            /* JsonParserGenerator.kt:523 */
   73     73   
            Ok(Some(map))
   74         -
            /* JsonParserGenerator.kt:750 */
          74  +
            /* JsonParserGenerator.kt:732 */
   75     75   
        }
   76         -
        /* JsonParserGenerator.kt:759 */
          76  +
        /* JsonParserGenerator.kt:741 */
   77     77   
        _ => {
   78         -
            /* JsonParserGenerator.kt:760 */
          78  +
            /* JsonParserGenerator.kt:742 */
   79     79   
            Err(
   80     80   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   81     81   
                    "expected start object or null",
   82     82   
                ),
   83     83   
            )
   84         -
            /* JsonParserGenerator.kt:759 */
   85         -
        } /* JsonParserGenerator.kt:749 */
          84  +
            /* JsonParserGenerator.kt:741 */
          85  +
        } /* JsonParserGenerator.kt:731 */
   86     86   
    }
   87         -
    /* JsonParserGenerator.kt:497 */
          87  +
    /* JsonParserGenerator.kt:490 */
   88     88   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_timestamp_list.rs

@@ -1,1 +75,73 @@
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => {
   23     23   
            /* JsonParserGenerator.kt:444 */
   24     24   
            let mut items = Vec::new();
   25     25   
            /* JsonParserGenerator.kt:445 */
   26     26   
            loop {
   27     27   
                /* JsonParserGenerator.kt:446 */
   28     28   
                match tokens.peek() {
   29     29   
                    /* JsonParserGenerator.kt:447 */
   30     30   
                    Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => {
   31     31   
                        /* JsonParserGenerator.kt:448 */
   32     32   
                        tokens.next().transpose().unwrap();
   33     33   
                        break;
   34     34   
                        /* JsonParserGenerator.kt:447 */
   35     35   
                    }
   36     36   
                    /* JsonParserGenerator.kt:450 */
   37     37   
                    _ => {
   38     38   
                        /* JsonParserGenerator.kt:456 */
   39     39   
                        let value =
   40     40   
                            /* JsonParserGenerator.kt:421 */::aws_smithy_json::deserialize::token::expect_timestamp_or_null(tokens.next(), ::aws_smithy_types::date_time::Format::EpochSeconds)?
   41     41   
                        /* JsonParserGenerator.kt:456 */;
   42     42   
                        /* JsonParserGenerator.kt:459 */
   43     43   
                        if let Some(value) = value {
   44     44   
                            items.push(value);
   45         -
                        }
   46         -
                        /* JsonParserGenerator.kt:467 */
   47         -
                        else {
          45  +
                        } else {
   48     46   
                            return Err(
   49     47   
                                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   50     48   
                                    "dense list cannot contain null values",
   51     49   
                                ),
   52     50   
                            );
   53     51   
                        }
   54     52   
                        /* JsonParserGenerator.kt:450 */
   55     53   
                    } /* JsonParserGenerator.kt:446 */
   56     54   
                }
   57     55   
                /* JsonParserGenerator.kt:445 */
   58     56   
            }
   59         -
            /* JsonParserGenerator.kt:483 */
          57  +
            /* JsonParserGenerator.kt:476 */
   60     58   
            Ok(Some(items))
   61         -
            /* JsonParserGenerator.kt:750 */
          59  +
            /* JsonParserGenerator.kt:732 */
   62     60   
        }
   63         -
        /* JsonParserGenerator.kt:759 */
          61  +
        /* JsonParserGenerator.kt:741 */
   64     62   
        _ => {
   65         -
            /* JsonParserGenerator.kt:760 */
          63  +
            /* JsonParserGenerator.kt:742 */
   66     64   
            Err(
   67     65   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   68     66   
                    "expected start array or null",
   69     67   
                ),
   70     68   
            )
   71         -
            /* JsonParserGenerator.kt:759 */
   72         -
        } /* JsonParserGenerator.kt:749 */
          69  +
            /* JsonParserGenerator.kt:741 */
          70  +
        } /* JsonParserGenerator.kt:731 */
   73     71   
    }
   74     72   
    /* JsonParserGenerator.kt:435 */
   75     73   
}

tmp-codegen-diff/codegen-server-test/rest_json-http0x/rust-server-codegen/src/protocol_serde/shape_top_level.rs

@@ -1,1 +110,110 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/* JsonParserGenerator.kt:553 */
           2  +
/* JsonParserGenerator.kt:535 */
    3      3   
pub(crate) fn de_top_level<'a, I>(
    4      4   
    tokens: &mut ::std::iter::Peekable<I>,
    5      5   
    _value: &'a [u8],
    6      6   
) -> ::std::result::Result<
    7      7   
    Option<crate::model::top_level::Builder>,
    8      8   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    9      9   
>
   10     10   
where
   11     11   
    I: Iterator<
   12     12   
        Item = Result<
   13     13   
            ::aws_smithy_json::deserialize::Token<'a>,
   14     14   
            ::aws_smithy_json::deserialize::error::DeserializeError,
   15     15   
        >,
   16     16   
    >,
   17     17   
{
   18         -
    /* JsonParserGenerator.kt:749 */
          18  +
    /* JsonParserGenerator.kt:731 */
   19     19   
    match tokens.next().transpose()? {
   20         -
        /* JsonParserGenerator.kt:750 */
          20  +
        /* JsonParserGenerator.kt:732 */
   21     21   
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   22     22   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
   23     23   
            /* RustType.kt:534 */
   24     24   
            #[allow(unused_mut)]
   25         -
            /* JsonParserGenerator.kt:563 */
          25  +
            /* JsonParserGenerator.kt:545 */
   26     26   
            let mut builder = crate::model::top_level::Builder::default();
   27         -
            /* JsonParserGenerator.kt:721 */
          27  +
            /* JsonParserGenerator.kt:703 */
   28     28   
            loop {
   29         -
                /* JsonParserGenerator.kt:722 */
          29  +
                /* JsonParserGenerator.kt:704 */
   30     30   
                match tokens.next().transpose()? {
   31         -
                    /* JsonParserGenerator.kt:723 */
          31  +
                    /* JsonParserGenerator.kt:705 */
   32     32   
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   33     33   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   34     34   
                        /* JsonParserGenerator.kt:265 */
   35     35   
                        match key.to_unescaped()?.as_ref() {
   36     36   
                            /* JsonParserGenerator.kt:267 */
   37     37   
                            "dialog" => {
   38     38   
                                /* JsonParserGenerator.kt:281 */
   39     39   
                                if let Some(v) =
   40         -
                                    /* JsonParserGenerator.kt:581 */
          40  +
                                    /* JsonParserGenerator.kt:563 */
   41     41   
                                    crate::protocol_serde::shape_dialog::de_dialog(
   42     42   
                                        tokens, _value,
   43     43   
                                    )?
   44     44   
                                /* JsonParserGenerator.kt:283 */
   45     45   
                                {
   46     46   
                                    builder = builder.set_dialog(v);
   47     47   
                                }
   48     48   
                                /* JsonParserGenerator.kt:267 */
   49     49   
                            }
   50     50   
                            /* JsonParserGenerator.kt:267 */
   51     51   
                            "dialogList" => {
   52     52   
                                /* JsonParserGenerator.kt:281 */
   53     53   
                                if let Some(v) =
   54         -
                                    /* JsonParserGenerator.kt:488 */
          54  +
                                    /* JsonParserGenerator.kt:481 */
   55     55   
                                    crate::protocol_serde::shape_dialog_list::de_dialog_list(
   56     56   
                                            tokens, _value,
   57     57   
                                        )?
   58     58   
                                /* JsonParserGenerator.kt:283 */
   59     59   
                                {
   60     60   
                                    builder = builder.set_dialog_list(v);
   61     61   
                                }
   62     62   
                                /* JsonParserGenerator.kt:267 */
   63     63   
                            }
   64     64   
                            /* JsonParserGenerator.kt:267 */
   65     65   
                            "dialogMap" => {
   66     66   
                                /* JsonParserGenerator.kt:281 */
   67     67   
                                if let Some(v) =
   68         -
                                    /* JsonParserGenerator.kt:546 */
          68  +
                                    /* JsonParserGenerator.kt:528 */
   69     69   
                                    crate::protocol_serde::shape_dialog_map::de_dialog_map(
   70     70   
                                            tokens, _value,
   71     71   
                                        )?
   72     72   
                                /* JsonParserGenerator.kt:283 */
   73     73   
                                {
   74     74   
                                    builder = builder.set_dialog_map(v);
   75     75   
                                }
   76     76   
                                /* JsonParserGenerator.kt:267 */
   77     77   
                            }
   78     78   
                            /* JsonParserGenerator.kt:295 */
   79     79   
                            _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, /* JsonParserGenerator.kt:265 */
   80     80   
                        }
   81         -
                        /* JsonParserGenerator.kt:723 */
          81  +
                        /* JsonParserGenerator.kt:705 */
   82     82   
                    }
   83         -
                    /* JsonParserGenerator.kt:732 */
          83  +
                    /* JsonParserGenerator.kt:714 */
   84     84   
                    other => {
   85     85   
                        return Err(
   86     86   
                            ::aws_smithy_json::deserialize::error::DeserializeError::custom(
   87     87   
                                format!("expected object key or end object, found: {other:?}"),
   88     88   
                            ),
   89     89   
                        )
   90         -
                    } /* JsonParserGenerator.kt:722 */
          90  +
                    } /* JsonParserGenerator.kt:704 */
   91     91   
                }
   92         -
                /* JsonParserGenerator.kt:721 */
          92  +
                /* JsonParserGenerator.kt:703 */
   93     93   
            }
   94         -
            /* JsonParserGenerator.kt:577 */
          94  +
            /* JsonParserGenerator.kt:559 */
   95     95   
            Ok(Some(builder))
   96         -
            /* JsonParserGenerator.kt:750 */
          96  +
            /* JsonParserGenerator.kt:732 */
   97     97   
        }
   98         -
        /* JsonParserGenerator.kt:759 */
          98  +
        /* JsonParserGenerator.kt:741 */
   99     99   
        _ => {
  100         -
            /* JsonParserGenerator.kt:760 */
         100  +
            /* JsonParserGenerator.kt:742 */
  101    101   
            Err(
  102    102   
                ::aws_smithy_json::deserialize::error::DeserializeError::custom(
  103    103   
                    "expected start object or null",
  104    104   
                ),
  105    105   
            )
  106         -
            /* JsonParserGenerator.kt:759 */
  107         -
        } /* JsonParserGenerator.kt:749 */
         106  +
            /* JsonParserGenerator.kt:741 */
         107  +
        } /* JsonParserGenerator.kt:731 */
  108    108   
    }
  109         -
    /* JsonParserGenerator.kt:553 */
         109  +
    /* JsonParserGenerator.kt:535 */
  110    110   
}