3Hren / msgpack-rust

MessagePack implementation for Rust / msgpack.org[Rust]
MIT License
1.11k stars 123 forks source link

Deserialisation error of Serialised enum with struct #170

Open misos1 opened 6 years ago

misos1 commented 6 years ago

Here deserialisation is returning Syntax("invalid value: integer 10, expected field index 0 <= i < 1"):

#[derive(Serialize, Deserialize, Debug)]
enum Test
{
    Inner {val: i32}
}

fn main()
{
    let ser = rmp_serde::to_vec_named(&Test::Inner {val: 10}).unwrap();
    println!("{:?}", ser);
    let de: Test = rmp_serde::from_slice(&ser).unwrap();
    println!("{:?}", de);
}

Serialised form is [146, 0, 129, 10] and it looks invalid.

cbeck88 commented 5 years ago

Why would you expect anything different?