serde-nu

Convert any value implementing serde::Serialize into a nu_protocol::Value using serde_nu::to_value. Compare the below manual implemeentation and the one using serde_nu.

```rust use nuprotocol::{Dictionary, Primitive, UntaggedValue, Value}; use nusource::Tag; use serde::Serialize;

[derive(Serialize)]

struct MyStruct { index: usize, name: String, }

fn manual(s: MyStruct, tag: Tag) -> Value { let mut dict = Dictionary::default(); dict.insert( "index".into(), Value { value: UntaggedValue::Primitive(Primitive::Int(s.index as i64)), tag: tag.clone(), }, ); dict.insert( "name".into(), Value { value: UntaggedValue::Primitive(Primitive::String(s.name)), tag: tag.clone(), }, );

Value {
    value: UntaggedValue::Row(dict),
    tag,
}

}

fn auto(s: &MyStruct, tag: Tag) -> Value { serdenu::tovalue(s, tag).unwrap() } ```