4 #![allow(unused_imports)]
5 #![feature(rustc_private)]
7 extern crate rustc_macros;
8 extern crate rustc_serialize;
10 use rustc_macros::{Decodable, Encodable};
11 use rustc_serialize::opaque::{MemDecoder, MemEncoder};
12 use rustc_serialize::{Decodable, Encodable, Encoder};
14 #[derive(Encodable, Decodable, PartialEq, Debug)]
15 struct UnitLikeStruct;
18 let obj = UnitLikeStruct;
20 let mut encoder = MemEncoder::new();
21 obj.encode(&mut encoder);
22 let data = encoder.finish();
24 let mut decoder = MemDecoder::new(&data, 0);
25 let obj2 = UnitLikeStruct::decode(&mut decoder);
27 assert_eq!(obj, obj2);