RosettaCodeData/Task/JSON/Rust/json.rust

17 lines
446 B
Text
Raw Permalink Normal View History

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);
}