mirror of
https://github.com/serde-rs/serde.git
synced 2025-10-02 15:25:38 +00:00
Merge pull request #859 from serde-rs/unitseq
Remove conversion from empty seq to unit struct
This commit is contained in:
commit
528ec3cdd8
@ -168,13 +168,6 @@ fn deserialize_unit_struct(ident: &syn::Ident, item_attrs: &attr::Item) -> Fragm
|
|||||||
{
|
{
|
||||||
_serde::export::Ok(#ident)
|
_serde::export::Ok(#ident)
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
|
||||||
fn visit_seq<__V>(self, _: __V) -> _serde::export::Result<#ident, __V::Error>
|
|
||||||
where __V: _serde::de::SeqVisitor<'de>
|
|
||||||
{
|
|
||||||
_serde::export::Ok(#ident)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_serde::Deserializer::deserialize_unit_struct(__deserializer, #type_name, __Visitor)
|
_serde::Deserializer::deserialize_unit_struct(__deserializer, #type_name, __Visitor)
|
||||||
|
@ -242,14 +242,6 @@ declare_tests! {
|
|||||||
UnitStruct => &[
|
UnitStruct => &[
|
||||||
Token::UnitStruct("UnitStruct"),
|
Token::UnitStruct("UnitStruct"),
|
||||||
],
|
],
|
||||||
UnitStruct => &[
|
|
||||||
Token::Seq(Some(0)),
|
|
||||||
Token::SeqEnd,
|
|
||||||
],
|
|
||||||
UnitStruct => &[
|
|
||||||
Token::Seq(None),
|
|
||||||
Token::SeqEnd,
|
|
||||||
],
|
|
||||||
}
|
}
|
||||||
test_newtype_struct {
|
test_newtype_struct {
|
||||||
NewtypeStruct(1) => &[
|
NewtypeStruct(1) => &[
|
||||||
@ -1036,4 +1028,11 @@ declare_error_tests! {
|
|||||||
],
|
],
|
||||||
Error::Message("invalid type: floating point `0`, expected isize".into()),
|
Error::Message("invalid type: floating point `0`, expected isize".into()),
|
||||||
}
|
}
|
||||||
|
test_unit_struct_from_seq<UnitStruct> {
|
||||||
|
&[
|
||||||
|
Token::Seq(Some(0)),
|
||||||
|
Token::SeqEnd,
|
||||||
|
],
|
||||||
|
Error::Message("invalid type: sequence, expected unit struct UnitStruct".into()),
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user