const _IMPL_DESERIALIZE_FOR_EncodableVersion: () =
{
extern crate serde as _serde;
#[automatically_derived]
impl <'de> _serde::Deserialize<'de> for EncodableVersion {
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,
__field2,
__field3,
__field4,
__field5,
__field6,
__field7,
__field8,
__field9,
__field10,
__field11,
__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),
2u64
=>
_serde::export::Ok(__Field::__field2),
3u64
=>
_serde::export::Ok(__Field::__field3),
4u64
=>
_serde::export::Ok(__Field::__field4),
5u64
=>
_serde::export::Ok(__Field::__field5),
6u64
=>
_serde::export::Ok(__Field::__field6),
7u64
=>
_serde::export::Ok(__Field::__field7),
8u64
=>
_serde::export::Ok(__Field::__field8),
9u64
=>
_serde::export::Ok(__Field::__field9),
10u64
=>
_serde::export::Ok(__Field::__field10),
11u64
=>
_serde::export::Ok(__Field::__field11),
_
=>
_serde::export::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"field index 0 <= i < 12")),
}
}
fn visit_str<__E>(self: Self,
__value:
&str)
->
_serde::export::Result<<Self>::Value,
__E>
where
__E: _serde::de::Error {
match __value
{
"id"
=>
_serde::export::Ok(__Field::__field0),
"crate"
=>
_serde::export::Ok(__Field::__field1),
"num"
=>
_serde::export::Ok(__Field::__field2),
"dl_path"
=>
_serde::export::Ok(__Field::__field3),
"readme_path"
=>
_serde::export::Ok(__Field::__field4),
"updated_at"
=>
_serde::export::Ok(__Field::__field5),
"created_at"
=>
_serde::export::Ok(__Field::__field6),
"downloads"
=>
_serde::export::Ok(__Field::__field7),
"features"
=>
_serde::export::Ok(__Field::__field8),
"yanked"
=>
_serde::export::Ok(__Field::__field9),
"license"
=>
_serde::export::Ok(__Field::__field10),
"links"
=>
_serde::export::Ok(__Field::__field11),
_
=>
_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"id"
=>
_serde::export::Ok(__Field::__field0),
b"crate"
=>
_serde::export::Ok(__Field::__field1),
b"num"
=>
_serde::export::Ok(__Field::__field2),
b"dl_path"
=>
_serde::export::Ok(__Field::__field3),
b"readme_path"
=>
_serde::export::Ok(__Field::__field4),
b"updated_at"
=>
_serde::export::Ok(__Field::__field5),
b"created_at"
=>
_serde::export::Ok(__Field::__field6),
b"downloads"
=>
_serde::export::Ok(__Field::__field7),
b"features"
=>
_serde::export::Ok(__Field::__field8),
b"yanked"
=>
_serde::export::Ok(__Field::__field9),
b"license"
=>
_serde::export::Ok(__Field::__field10),
b"links"
=>
_serde::export::Ok(__Field::__field11),
_
=>
{
_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<EncodableVersion>,
lifetime: _serde::export::PhantomData<&'de ()>,
}
impl <'de>
_serde::de::Visitor<'de> for
__Visitor<'de> {
type
Value
=
EncodableVersion;
fn expecting(self: &Self,
formatter:
&mut _serde::export::Formatter)
->
_serde::export::fmt::Result {
<_serde::export::Formatter>::write_str(formatter,
"struct EncodableVersion")
}
#[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::<i32>(&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 12 elements"));
}
};
let __field1 =
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(1usize,
&"tuple of 12 elements"));
}
};
let __field2 =
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(2usize,
&"tuple of 12 elements"));
}
};
let __field3 =
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(3usize,
&"tuple of 12 elements"));
}
};
let __field4 =
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(4usize,
&"tuple of 12 elements"));
}
};
let __field5 =
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(5usize,
&"tuple of 12 elements"));
}
};
let __field6 =
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(6usize,
&"tuple of 12 elements"));
}
};
let __field7 =
match match _serde::de::SeqAccess::next_element::<i32>(&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(7usize,
&"tuple of 12 elements"));
}
};
let __field8 =
match match _serde::de::SeqAccess::next_element::<HashMap<String,
Vec<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(8usize,
&"tuple of 12 elements"));
}
};
let __field9 =
match match _serde::de::SeqAccess::next_element::<bool>(&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(9usize,
&"tuple of 12 elements"));
}
};
let __field10 =
match match _serde::de::SeqAccess::next_element::<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(10usize,
&"tuple of 12 elements"));
}
};
let __field11 =
match match _serde::de::SeqAccess::next_element::<VersionLinks>(&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(11usize,
&"tuple of 12 elements"));
}
};
_serde::export::Ok(EncodableVersion{id:
__field0,
krate:
__field1,
num:
__field2,
dl_path:
__field3,
readme_path:
__field4,
updated_at:
__field5,
created_at:
__field6,
downloads:
__field7,
features:
__field8,
yanked:
__field9,
license:
__field10,
links:
__field11,})
}
#[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<i32> =
_serde::export::None;
let mut __field1:
_serde::export::Option<String> =
_serde::export::None;
let mut __field2:
_serde::export::Option<String> =
_serde::export::None;
let mut __field3:
_serde::export::Option<String> =
_serde::export::None;
let mut __field4:
_serde::export::Option<String> =
_serde::export::None;
let mut __field5:
_serde::export::Option<String> =
_serde::export::None;
let mut __field6:
_serde::export::Option<String> =
_serde::export::None;
let mut __field7:
_serde::export::Option<i32> =
_serde::export::None;
let mut __field8:
_serde::export::Option<HashMap<String,
Vec<String>>> =
_serde::export::None;
let mut __field9:
_serde::export::Option<bool> =
_serde::export::None;
let mut __field10:
_serde::export::Option<Option<String>> =
_serde::export::None;
let mut __field11:
_serde::export::Option<VersionLinks> =
_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("id"));
}
__field0
=
_serde::export::Some(match _serde::de::MapAccess::next_value::<i32>(&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("crate"));
}
__field1
=
_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::__field2
=>
{
if <_serde::export::Option>::is_some(&__field2)
{
return _serde::export::Err(<<__A>::Error
as
_serde::de::Error>::duplicate_field("num"));
}
__field2
=
_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::__field3
=>
{
if <_serde::export::Option>::is_some(&__field3)
{
return _serde::export::Err(<<__A>::Error
as
_serde::de::Error>::duplicate_field("dl_path"));
}
__field3
=
_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::__field4
=>
{
if <_serde::export::Option>::is_some(&__field4)
{
return _serde::export::Err(<<__A>::Error
as
_serde::de::Error>::duplicate_field("readme_path"));
}
__field4
=
_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::__field5
=>
{
if <_serde::export::Option>::is_some(&__field5)
{
return _serde::export::Err(<<__A>::Error
as
_serde::de::Error>::duplicate_field("updated_at"));
}
__field5
=
_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::__field6
=>
{
if <_serde::export::Option>::is_some(&__field6)
{
return _serde::export::Err(<<__A>::Error
as
_serde::de::Error>::duplicate_field("created_at"));
}
__field6
=
_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::__field7
=>
{
if <_serde::export::Option>::is_some(&__field7)
{
return _serde::export::Err(<<__A>::Error
as
_serde::de::Error>::duplicate_field("downloads"));
}
__field7
=
_serde::export::Some(match _serde::de::MapAccess::next_value::<i32>(&mut __map)
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
});
}
__Field::__field8
=>
{
if <_serde::export::Option>::is_some(&__field8)
{
return _serde::export::Err(<<__A>::Error
as
_serde::de::Error>::duplicate_field("features"));
}
__field8
=
_serde::export::Some(match _serde::de::MapAccess::next_value::<HashMap<String,
Vec<String>>>(&mut __map)
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
});
}
__Field::__field9
=>
{
if <_serde::export::Option>::is_some(&__field9)
{
return _serde::export::Err(<<__A>::Error
as
_serde::de::Error>::duplicate_field("yanked"));
}
__field9
=
_serde::export::Some(match _serde::de::MapAccess::next_value::<bool>(&mut __map)
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
});
}
__Field::__field10
=>
{
if <_serde::export::Option>::is_some(&__field10)
{
return _serde::export::Err(<<__A>::Error
as
_serde::de::Error>::duplicate_field("license"));
}
__field10
=
_serde::export::Some(match _serde::de::MapAccess::next_value::<Option<String>>(&mut __map)
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
});
}
__Field::__field11
=>
{
if <_serde::export::Option>::is_some(&__field11)
{
return _serde::export::Err(<<__A>::Error
as
_serde::de::Error>::duplicate_field("links"));
}
__field11
=
_serde::export::Some(match _serde::de::MapAccess::next_value::<VersionLinks>(&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("id")
{
::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("crate")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
let __field2 =
match __field2
{
_serde::export::Some(__field2)
=>
__field2,
_serde::export::None
=>
match _serde::private::de::missing_field("num")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
let __field3 =
match __field3
{
_serde::export::Some(__field3)
=>
__field3,
_serde::export::None
=>
match _serde::private::de::missing_field("dl_path")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
let __field4 =
match __field4
{
_serde::export::Some(__field4)
=>
__field4,
_serde::export::None
=>
match _serde::private::de::missing_field("readme_path")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
let __field5 =
match __field5
{
_serde::export::Some(__field5)
=>
__field5,
_serde::export::None
=>
match _serde::private::de::missing_field("updated_at")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
let __field6 =
match __field6
{
_serde::export::Some(__field6)
=>
__field6,
_serde::export::None
=>
match _serde::private::de::missing_field("created_at")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
let __field7 =
match __field7
{
_serde::export::Some(__field7)
=>
__field7,
_serde::export::None
=>
match _serde::private::de::missing_field("downloads")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
let __field8 =
match __field8
{
_serde::export::Some(__field8)
=>
__field8,
_serde::export::None
=>
match _serde::private::de::missing_field("features")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
let __field9 =
match __field9
{
_serde::export::Some(__field9)
=>
__field9,
_serde::export::None
=>
match _serde::private::de::missing_field("yanked")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
let __field10 =
match __field10
{
_serde::export::Some(__field10)
=>
__field10,
_serde::export::None
=>
match _serde::private::de::missing_field("license")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
let __field11 =
match __field11
{
_serde::export::Some(__field11)
=>
__field11,
_serde::export::None
=>
match _serde::private::de::missing_field("links")
{
::result::Result::Ok(val)
=>
val,
::result::Result::Err(err)
=>
{
return ::result::Result::Err(::convert::From::from(err))
}
},
};
_serde::export::Ok(EncodableVersion{id:
__field0,
krate:
__field1,
num:
__field2,
dl_path:
__field3,
readme_path:
__field4,
updated_at:
__field5,
created_at:
__field6,
downloads:
__field7,
features:
__field8,
yanked:
__field9,
license:
__field10,
links:
__field11,})
}
}
const FIELDS:
&'static [&'static str]
=
&["id",
"crate",
"num",
"dl_path",
"readme_path",
"updated_at",
"created_at",
"downloads",
"features",
"yanked",
"license",
"links"];
_serde::Deserializer::deserialize_struct(__deserializer,
"EncodableVersion",
FIELDS,
__Visitor{marker:
_serde::export::PhantomData::<EncodableVersion>,
lifetime:
_serde::export::PhantomData,})
}
}
}