// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. pub(crate) fn de_attribute_name_and_value_list<'a, I>( tokens: &mut ::std::iter::Peekable, ) -> Result>, ::aws_smithy_json::deserialize::error::DeserializeError> where I: Iterator, ::aws_smithy_json::deserialize::error::DeserializeError>>, { match tokens.next().transpose()? { Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None), Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => { let mut items = Vec::new(); loop { match tokens.peek() { Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => { tokens.next().transpose().unwrap(); break; } _ => { let value = crate::protocol_serde::shape_attribute_name_and_value::de_attribute_name_and_value(tokens)?; if let Some(value) = value { items.push(value); } } } } Ok(Some(items)) } _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom( "expected start array or null", )), } }