2015-11-18 06:14:39 +00:00
|
|
|
extern crate rustc_serialize;
|
|
|
|
|
|
|
|
|
|
use rustc_serialize::json;
|
|
|
|
|
|
|
|
|
|
#[derive(RustcDecodable, RustcEncodable)]
|
2015-02-20 00:35:01 -05:00
|
|
|
struct Penguin {
|
|
|
|
|
name : String,
|
|
|
|
|
born : i16
|
|
|
|
|
}
|
|
|
|
|
fn main() {
|
|
|
|
|
let pengu = Penguin { name : "pengu".to_string(), born : 1999 };
|
2015-11-18 06:14:39 +00:00
|
|
|
println!("{}", json::encode(&pengu).unwrap());
|
2015-02-20 00:35:01 -05:00
|
|
|
let pingu : Penguin = json::decode(r##"{"name":"pingu","born":2001}"##).unwrap();
|
2015-11-18 06:14:39 +00:00
|
|
|
assert_eq!(&pingu.name, "pingu");
|
2015-02-20 00:35:01 -05:00
|
|
|
assert_eq!(pingu.born, 2001);
|
|
|
|
|
}
|