Constant cargo_registry::badge::_IMPL_DESERIALIZE_FOR_EncodableBadge [] [src]

const _IMPL_DESERIALIZE_FOR_EncodableBadge: () = {
    extern crate serde as _serde;
    #[automatically_derived]
    impl <'de> _serde::Deserialize<'de> for EncodableBadge {
        fn deserialize<__D>(__deserializer: __D)
         -> _serde::export::Result<Self, <__D>::Error> where
         __D: _serde::Deserializer<'de> {
                                            #[allow(non_camel_case_types)]
                                            enum __Field {
                                                __field0,
                                                __field1,
                                                __ignore,
                                            }
                                            struct __FieldVisitor;
                                            impl <'de>
                                             _serde::de::Visitor<'de> for
                                             __FieldVisitor {
                                                type
                                                Value
                                                =
                                                __Field;
                                                fn expecting(self: &Self,
                                                             formatter:
                                                                 &mut _serde::export::Formatter)
                                                 ->
                                                     _serde::export::fmt::Result {
                                                                                     <_serde::export::Formatter>::write_str(formatter,
                                                                                                                            "field identifier")
                                                                                 }
                                                fn visit_u64<__E>(self: Self,
                                                                  __value:
                                                                      u64)
                                                 ->
                                                     _serde::export::Result<<Self>::Value,
                                                                            __E>
                                                 where
                                                 __E: _serde::de::Error {
                                                                            match __value
                                                                                {
                                                                                0u64
                                                                                =>
                                                                                _serde::export::Ok(__Field::__field0),
                                                                                1u64
                                                                                =>
                                                                                _serde::export::Ok(__Field::__field1),
                                                                                _
                                                                                =>
                                                                                _serde::export::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
                                                                                                                                     &"field index 0 <= i < 2")),
                                                                            }
                                                                        }
                                                fn visit_str<__E>(self: Self,
                                                                  __value:
                                                                      &str)
                                                 ->
                                                     _serde::export::Result<<Self>::Value,
                                                                            __E>
                                                 where
                                                 __E: _serde::de::Error {
                                                                            match __value
                                                                                {
                                                                                "badge_type"
                                                                                =>
                                                                                _serde::export::Ok(__Field::__field0),
                                                                                "attributes"
                                                                                =>
                                                                                _serde::export::Ok(__Field::__field1),
                                                                                _
                                                                                =>
                                                                                _serde::export::Ok(__Field::__ignore),
                                                                            }
                                                                        }
                                                fn visit_bytes<__E>(self:
                                                                        Self,
                                                                    __value:
                                                                        &[u8])
                                                 ->
                                                     _serde::export::Result<<Self>::Value,
                                                                            __E>
                                                 where
                                                 __E: _serde::de::Error {
                                                                            match __value
                                                                                {
                                                                                b"badge_type"
                                                                                =>
                                                                                _serde::export::Ok(__Field::__field0),
                                                                                b"attributes"
                                                                                =>
                                                                                _serde::export::Ok(__Field::__field1),
                                                                                _
                                                                                =>
                                                                                {
                                                                                    _serde::export::Ok(__Field::__ignore)
                                                                                }
                                                                            }
                                                                        }
                                            }
                                            impl <'de>
                                             _serde::Deserialize<'de> for
                                             __Field {
                                                #[inline]
                                                fn deserialize<__D>(__deserializer:
                                                                        __D)
                                                 ->
                                                     _serde::export::Result<Self,
                                                                            <__D>::Error>
                                                 where
                                                 __D: _serde::Deserializer<'de> {
                                                                                    _serde::Deserializer::deserialize_identifier(__deserializer,
                                                                                                                                 __FieldVisitor)
                                                                                }
                                            }
                                            struct __Visitor<'de> {
                                                marker: _serde::export::PhantomData<EncodableBadge>,
                                                lifetime: _serde::export::PhantomData<&'de ()>,
                                            }
                                            impl <'de>
                                             _serde::de::Visitor<'de> for
                                             __Visitor<'de> {
                                                type
                                                Value
                                                =
                                                EncodableBadge;
                                                fn expecting(self: &Self,
                                                             formatter:
                                                                 &mut _serde::export::Formatter)
                                                 ->
                                                     _serde::export::fmt::Result {
                                                                                     <_serde::export::Formatter>::write_str(formatter,
                                                                                                                            "struct EncodableBadge")
                                                                                 }
                                                #[inline]
                                                fn visit_seq<__A>(self: Self,
                                                                  mut __seq:
                                                                      __A)
                                                 ->
                                                     _serde::export::Result<<Self>::Value,
                                                                            <__A>::Error>
                                                 where
                                                 __A: _serde::de::SeqAccess<'de> {
                                                                                     let __field0 =
                                                                                         match match _serde::de::SeqAccess::next_element::<String>(&mut __seq)
                                                                                                   {
                                                                                                   ::result::Result::Ok(val)
                                                                                                   =>
                                                                                                   val,
                                                                                                   ::result::Result::Err(err)
                                                                                                   =>
                                                                                                   {
                                                                                                       return ::result::Result::Err(::convert::From::from(err))
                                                                                                   }
                                                                                               }
                                                                                             {
                                                                                             Some(__value)
                                                                                             =>
                                                                                             __value,
                                                                                             None
                                                                                             =>
                                                                                             {
                                                                                                 return _serde::export::Err(_serde::de::Error::invalid_length(0usize,
                                                                                                                                                              &"tuple of 2 elements"));
                                                                                             }
                                                                                         };
                                                                                     let __field1 =
                                                                                         match match _serde::de::SeqAccess::next_element::<HashMap<String,
                                                                                                                                                   Option<String>>>(&mut __seq)
                                                                                                   {
                                                                                                   ::result::Result::Ok(val)
                                                                                                   =>
                                                                                                   val,
                                                                                                   ::result::Result::Err(err)
                                                                                                   =>
                                                                                                   {
                                                                                                       return ::result::Result::Err(::convert::From::from(err))
                                                                                                   }
                                                                                               }
                                                                                             {
                                                                                             Some(__value)
                                                                                             =>
                                                                                             __value,
                                                                                             None
                                                                                             =>
                                                                                             {
                                                                                                 return _serde::export::Err(_serde::de::Error::invalid_length(1usize,
                                                                                                                                                              &"tuple of 2 elements"));
                                                                                             }
                                                                                         };
                                                                                     _serde::export::Ok(EncodableBadge{badge_type:
                                                                                                                           __field0,
                                                                                                                       attributes:
                                                                                                                           __field1,})
                                                                                 }
                                                #[inline]
                                                fn visit_map<__A>(self: Self,
                                                                  mut __map:
                                                                      __A)
                                                 ->
                                                     _serde::export::Result<<Self>::Value,
                                                                            <__A>::Error>
                                                 where
                                                 __A: _serde::de::MapAccess<'de> {
                                                                                     let mut __field0:
                                                                                             _serde::export::Option<String> =
                                                                                         _serde::export::None;
                                                                                     let mut __field1:
                                                                                             _serde::export::Option<HashMap<String,
                                                                                                                            Option<String>>> =
                                                                                         _serde::export::None;
                                                                                     loop 
                                                                                          {
                                                                                         match match _serde::de::MapAccess::next_key::<__Field>(&mut __map)
                                                                                                   {
                                                                                                   ::result::Result::Ok(val)
                                                                                                   =>
                                                                                                   val,
                                                                                                   ::result::Result::Err(err)
                                                                                                   =>
                                                                                                   {
                                                                                                       return ::result::Result::Err(::convert::From::from(err))
                                                                                                   }
                                                                                               }
                                                                                             {
                                                                                             _serde::export::Some(__key)
                                                                                             =>
                                                                                             {
                                                                                                 match __key
                                                                                                     {
                                                                                                     __Field::__field0
                                                                                                     =>
                                                                                                     {
                                                                                                         if <_serde::export::Option>::is_some(&__field0)
                                                                                                            {
                                                                                                                return _serde::export::Err(<<__A>::Error
                                                                                                                                               as
                                                                                                                                               _serde::de::Error>::duplicate_field("badge_type"));
                                                                                                            }
                                                                                                             __field0
                                                                                                                 =
                                                                                                                 _serde::export::Some(match _serde::de::MapAccess::next_value::<String>(&mut __map)
                                                                                                                                          {
                                                                                                                                          ::result::Result::Ok(val)
                                                                                                                                          =>
                                                                                                                                          val,
                                                                                                                                          ::result::Result::Err(err)
                                                                                                                                          =>
                                                                                                                                          {
                                                                                                                                              return ::result::Result::Err(::convert::From::from(err))
                                                                                                                                          }
                                                                                                                                      });
                                                                                                         }
                                                                                                             __Field::__field1
                                                                                                             =>
                                                                                                             {
                                                                                                                 if <_serde::export::Option>::is_some(&__field1)
                                                                                                                    {
                                                                                                                        return _serde::export::Err(<<__A>::Error
                                                                                                                                                       as
                                                                                                                                                       _serde::de::Error>::duplicate_field("attributes"));
                                                                                                                    }
                                                                                                                     __field1
                                                                                                                         =
                                                                                                                         _serde::export::Some(match _serde::de::MapAccess::next_value::<HashMap<String,
                                                                                                                                                                                                Option<String>>>(&mut __map)
                                                                                                                                                  {
                                                                                                                                                  ::result::Result::Ok(val)
                                                                                                                                                  =>
                                                                                                                                                  val,
                                                                                                                                                  ::result::Result::Err(err)
                                                                                                                                                  =>
                                                                                                                                                  {
                                                                                                                                                      return ::result::Result::Err(::convert::From::from(err))
                                                                                                                                                  }
                                                                                                                                              });
                                                                                                                 }
                                                                                                                     _
                                                                                                                     =>
                                                                                                                     {
                                                                                                                         let _ =
                                                                                                                             match _serde::de::MapAccess::next_value::<_serde::de::IgnoredAny>(&mut __map)
                                                                                                                                 {
                                                                                                                                 ::result::Result::Ok(val)
                                                                                                                                 =>
                                                                                                                                 val,
                                                                                                                                 ::result::Result::Err(err)
                                                                                                                                 =>
                                                                                                                                 {
                                                                                                                                     return ::result::Result::Err(::convert::From::from(err))
                                                                                                                                 }
                                                                                                                             };
                                                                                                                     }
                                                                                                                 }
                                                                                                         }
                                                                                                         _
                                                                                                         =>
                                                                                                         break
                                                                                                             ,
                                                                                                     }
                                                                                                 }
                                                                                             let __field0 =
                                                                                                 match __field0
                                                                                                     {
                                                                                                     _serde::export::Some(__field0)
                                                                                                     =>
                                                                                                     __field0,
                                                                                                     _serde::export::None
                                                                                                     =>
                                                                                                     match _serde::private::de::missing_field("badge_type")
                                                                                                         {
                                                                                                         ::result::Result::Ok(val)
                                                                                                         =>
                                                                                                         val,
                                                                                                         ::result::Result::Err(err)
                                                                                                         =>
                                                                                                         {
                                                                                                             return ::result::Result::Err(::convert::From::from(err))
                                                                                                         }
                                                                                                     },
                                                                                                 };
                                                                                             let __field1 =
                                                                                                 match __field1
                                                                                                     {
                                                                                                     _serde::export::Some(__field1)
                                                                                                     =>
                                                                                                     __field1,
                                                                                                     _serde::export::None
                                                                                                     =>
                                                                                                     match _serde::private::de::missing_field("attributes")
                                                                                                         {
                                                                                                         ::result::Result::Ok(val)
                                                                                                         =>
                                                                                                         val,
                                                                                                         ::result::Result::Err(err)
                                                                                                         =>
                                                                                                         {
                                                                                                             return ::result::Result::Err(::convert::From::from(err))
                                                                                                         }
                                                                                                     },
                                                                                                 };
                                                                                             _serde::export::Ok(EncodableBadge{badge_type:
                                                                                                                                   __field0,
                                                                                                                               attributes:
                                                                                                                                   __field1,})
                                                                                         }
                                                                                     }
                                                                                         const FIELDS:
                                                                                               &'static [&'static str]
                                                                                               =
                                                                                             &["badge_type",
                                                                                               "attributes"];
                                                                                         _serde::Deserializer::deserialize_struct(__deserializer,
                                                                                                                                  "EncodableBadge",
                                                                                                                                  FIELDS,
                                                                                                                                  __Visitor{marker:
                                                                                                                                                _serde::export::PhantomData::<EncodableBadge>,
                                                                                                                                            lifetime:
                                                                                                                                                _serde::export::PhantomData,})
                                                                                     }
                                                                                 }
                                            }