1 1 | // Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2 - | /* JsonParserGenerator.kt:588 */
|
2 + | /* JsonParserGenerator.kt:570 */
|
3 3 | pub(crate) fn de_simple_union<'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::SimpleUnion>,
|
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:602 */
|
18 + | /* JsonParserGenerator.kt:584 */
|
19 19 | let mut variant = None;
|
20 - | /* JsonParserGenerator.kt:604 */
|
20 + | /* JsonParserGenerator.kt:586 */
|
21 21 | match tokens.next().transpose()? {
|
22 - | /* JsonParserGenerator.kt:605 */
|
22 + | /* JsonParserGenerator.kt:587 */
|
23 23 | Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => return Ok(None),
|
24 24 | Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
|
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:613 */
|
32 + | /* JsonParserGenerator.kt:595 */
|
33 33 | if let ::std::option::Option::Some(::std::result::Result::Ok(
|
34 34 | ::aws_smithy_json::deserialize::Token::ValueNull { .. },
|
35 35 | )) = tokens.peek()
|
36 36 | {
|
37 37 | let _ = tokens.next().expect("peek returned a token")?;
|
38 38 | continue;
|
39 39 | }
|
40 - | /* JsonParserGenerator.kt:622 */
|
40 + | /* JsonParserGenerator.kt:604 */
|
41 41 | let key = key.to_unescaped()?;
|
42 42 | if key == "__type" {
|
43 43 | ::aws_smithy_json::deserialize::token::skip_value(tokens)?;
|
44 44 | continue;
|
45 45 | }
|
46 46 | if variant.is_some() {
|
47 47 | return Err(
|
48 48 | ::aws_smithy_json::deserialize::error::DeserializeError::custom(
|
49 49 | "encountered mixed variants in union",
|
50 50 | ),
|
51 51 | );
|
52 52 | }
|
53 - | /* JsonParserGenerator.kt:635 */
|
53 + | /* JsonParserGenerator.kt:617 */
|
54 54 | variant = match key.as_ref() {
|
55 - | /* JsonParserGenerator.kt:638 */
|
55 + | /* JsonParserGenerator.kt:620 */
|
56 56 | "int" => {
|
57 - | /* JsonParserGenerator.kt:648 */
|
57 + | /* JsonParserGenerator.kt:630 */
|
58 58 | Some(crate::model::SimpleUnion::Int(
|
59 59 | /* JsonParserGenerator.kt:372 */::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
|
60 60 | .map(i32::try_from)
|
61 61 | .transpose()?
|
62 - | /* JsonParserGenerator.kt:707 */.ok_or_else(|| ::aws_smithy_json::deserialize::error::DeserializeError::custom("value for 'int' cannot be null"))?
|
63 - | /* JsonParserGenerator.kt:648 */))
|
64 - | /* JsonParserGenerator.kt:638 */
|
62 + | /* JsonParserGenerator.kt:689 */.ok_or_else(|| ::aws_smithy_json::deserialize::error::DeserializeError::custom("value for 'int' cannot be null"))?
|
63 + | /* JsonParserGenerator.kt:630 */))
|
64 + | /* JsonParserGenerator.kt:620 */
|
65 65 | }
|
66 - | /* JsonParserGenerator.kt:638 */
|
66 + | /* JsonParserGenerator.kt:620 */
|
67 67 | "string" => {
|
68 - | /* JsonParserGenerator.kt:648 */
|
68 + | /* JsonParserGenerator.kt:630 */
|
69 69 | Some(crate::model::SimpleUnion::String(
|
70 70 | /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
|
71 71 | /* JsonParserGenerator.kt:346 */s.to_unescaped().map(|u|
|
72 72 | /* JsonParserGenerator.kt:355 */u.into_owned()
|
73 73 | /* JsonParserGenerator.kt:346 */)
|
74 74 | /* JsonParserGenerator.kt:361 */).transpose()?
|
75 - | /* JsonParserGenerator.kt:707 */.ok_or_else(|| ::aws_smithy_json::deserialize::error::DeserializeError::custom("value for 'string' cannot be null"))?
|
76 - | /* JsonParserGenerator.kt:648 */))
|
77 - | /* JsonParserGenerator.kt:638 */
|
75 + | /* JsonParserGenerator.kt:689 */.ok_or_else(|| ::aws_smithy_json::deserialize::error::DeserializeError::custom("value for 'string' cannot be null"))?
|
76 + | /* JsonParserGenerator.kt:630 */))
|
77 + | /* JsonParserGenerator.kt:620 */
|
78 78 | }
|
79 - | /* JsonParserGenerator.kt:671 */
|
79 + | /* JsonParserGenerator.kt:653 */
|
80 80 | variant => {
|
81 81 | return Err(
|
82 82 | ::aws_smithy_json::deserialize::error::DeserializeError::custom(
|
83 83 | format!("unexpected union variant: {variant}"),
|
84 84 | ),
|
85 85 | )
|
86 - | } /* JsonParserGenerator.kt:635 */
|
86 + | } /* JsonParserGenerator.kt:617 */
|
87 87 | };
|
88 - | /* JsonParserGenerator.kt:723 */
|
88 + | /* JsonParserGenerator.kt:705 */
|
89 89 | }
|
90 - | /* JsonParserGenerator.kt:732 */
|
90 + | /* JsonParserGenerator.kt:714 */
|
91 91 | other => {
|
92 92 | return Err(
|
93 93 | ::aws_smithy_json::deserialize::error::DeserializeError::custom(
|
94 94 | format!("expected object key or end object, found: {other:?}"),
|
95 95 | ),
|
96 96 | )
|
97 - | } /* JsonParserGenerator.kt:722 */
|
97 + | } /* JsonParserGenerator.kt:704 */
|
98 98 | }
|
99 - | /* JsonParserGenerator.kt:721 */
|
99 + | /* JsonParserGenerator.kt:703 */
|
100 100 | }
|
101 - | /* JsonParserGenerator.kt:605 */
|
101 + | /* JsonParserGenerator.kt:587 */
|
102 102 | }
|
103 - | /* JsonParserGenerator.kt:679 */
|
103 + | /* JsonParserGenerator.kt:661 */
|
104 104 | _ => {
|
105 105 | return Err(
|
106 106 | ::aws_smithy_json::deserialize::error::DeserializeError::custom(
|
107 107 | "expected start object or null",
|
108 108 | ),
|
109 109 | )
|
110 - | } /* JsonParserGenerator.kt:604 */
|
110 + | } /* JsonParserGenerator.kt:586 */
|
111 111 | }
|
112 - | /* JsonParserGenerator.kt:686 */
|
112 + | /* JsonParserGenerator.kt:668 */
|
113 113 | if variant.is_none() {
|
114 114 | return Err(
|
115 115 | ::aws_smithy_json::deserialize::error::DeserializeError::custom(
|
116 116 | "Union did not contain a valid variant.",
|
117 117 | ),
|
118 118 | );
|
119 119 | }
|
120 - | /* JsonParserGenerator.kt:694 */
|
120 + | /* JsonParserGenerator.kt:676 */
|
121 121 | Ok(variant)
|
122 - | /* JsonParserGenerator.kt:588 */
|
122 + | /* JsonParserGenerator.kt:570 */
|
123 123 | }
|