diff --git a/bench_enum.rs b/bench_enum.rs index 20ac0f9d..781c8d72 100644 --- a/bench_enum.rs +++ b/bench_enum.rs @@ -261,7 +261,19 @@ mod deserializer { ////////////////////////////////////////////////////////////////////////////// #[bench] -fn bench_enum_decoder(b: &mut Bencher) { +fn bench_decoder_dog(b: &mut Bencher) { + b.iter(|| { + let animal = Dog; + + let mut d = decoder::AnimalDecoder::new(animal.clone()); + let value: Animal = Decodable::decode(&mut d).unwrap(); + + assert_eq!(value, animal); + }) +} + +#[bench] +fn bench_decoder_frog(b: &mut Bencher) { b.iter(|| { let animal = Frog("Henry".to_strbuf(), 349); @@ -273,7 +285,19 @@ fn bench_enum_decoder(b: &mut Bencher) { } #[bench] -fn bench_enum_deserializer(b: &mut Bencher) { +fn bench_deserializer_dog(b: &mut Bencher) { + b.iter(|| { + let animal = Dog; + + let mut d = deserializer::AnimalDeserializer::new(animal.clone()); + let value: Animal = Deserializable::deserialize(&mut d).unwrap(); + + assert_eq!(value, animal); + }) +} + +#[bench] +fn bench_deserializer_frog(b: &mut Bencher) { b.iter(|| { let animal = Frog("Henry".to_strbuf(), 349); diff --git a/bench_map.rs b/bench_map.rs index 575da966..e7bd7af7 100644 --- a/bench_map.rs +++ b/bench_map.rs @@ -245,7 +245,7 @@ fn run_decoder< } #[bench] -fn bench_decoder_map_000(b: &mut Bencher) { +fn bench_decoder_000(b: &mut Bencher) { b.iter(|| { let m: HashMap = HashMap::new(); run_decoder(decoder::IntDecoder::new(m.clone()), m) @@ -253,7 +253,7 @@ fn bench_decoder_map_000(b: &mut Bencher) { } #[bench] -fn bench_decoder_map_003(b: &mut Bencher) { +fn bench_decoder_003(b: &mut Bencher) { b.iter(|| { let mut m: HashMap = HashMap::new(); for i in range(0, 3) { @@ -264,7 +264,7 @@ fn bench_decoder_map_003(b: &mut Bencher) { } #[bench] -fn bench_decoder_map_100(b: &mut Bencher) { +fn bench_decoder_100(b: &mut Bencher) { b.iter(|| { let mut m: HashMap = HashMap::new(); for i in range(0, 100) { @@ -285,7 +285,7 @@ fn run_deserializer< } #[bench] -fn bench_deserializer_map_000(b: &mut Bencher) { +fn bench_deserializer_000(b: &mut Bencher) { b.iter(|| { let m: HashMap = HashMap::new(); run_deserializer(deserializer::IntDeserializer::new(m.clone()), m) @@ -293,7 +293,7 @@ fn bench_deserializer_map_000(b: &mut Bencher) { } #[bench] -fn bench_deserializer_map_003(b: &mut Bencher) { +fn bench_deserializer_003(b: &mut Bencher) { b.iter(|| { let mut m: HashMap = HashMap::new(); for i in range(0, 3) { @@ -304,7 +304,7 @@ fn bench_deserializer_map_003(b: &mut Bencher) { } #[bench] -fn bench_deserializer_map_100(b: &mut Bencher) { +fn bench_deserializer_100(b: &mut Bencher) { b.iter(|| { let mut m: HashMap = HashMap::new(); for i in range(0, 100) { diff --git a/bench_struct.rs b/bench_struct.rs index 716aa7a4..8014b667 100644 --- a/bench_struct.rs +++ b/bench_struct.rs @@ -379,7 +379,7 @@ mod deserializer { } #[bench] -fn bench_struct_decoder_outer_empty(b: &mut Bencher) { +fn bench_decoder_0_0(b: &mut Bencher) { b.iter(|| { let mut map = HashMap::new(); map.insert("abc".to_strbuf(), Some('c')); @@ -396,7 +396,7 @@ fn bench_struct_decoder_outer_empty(b: &mut Bencher) { } #[bench] -fn bench_struct_decoder_inner_empty(b: &mut Bencher) { +fn bench_decoder_1_0(b: &mut Bencher) { b.iter(|| { let map = HashMap::new(); @@ -418,7 +418,7 @@ fn bench_struct_decoder_inner_empty(b: &mut Bencher) { } #[bench] -fn bench_struct_decoder(b: &mut Bencher) { +fn bench_decoder_1_5(b: &mut Bencher) { b.iter(|| { let mut map = HashMap::new(); map.insert("1".to_strbuf(), Some('a')); @@ -445,7 +445,7 @@ fn bench_struct_decoder(b: &mut Bencher) { } #[bench] -fn bench_struct_deserializer_outer_empty(b: &mut Bencher) { +fn bench_deserializer_0_0(b: &mut Bencher) { b.iter(|| { let mut map = HashMap::new(); map.insert("abc".to_strbuf(), Some('c')); @@ -462,7 +462,7 @@ fn bench_struct_deserializer_outer_empty(b: &mut Bencher) { } #[bench] -fn bench_struct_deserializer_inner_empty(b: &mut Bencher) { +fn bench_deserializer_1_0(b: &mut Bencher) { b.iter(|| { let map = HashMap::new(); @@ -484,7 +484,7 @@ fn bench_struct_deserializer_inner_empty(b: &mut Bencher) { } #[bench] -fn bench_struct_deserializer(b: &mut Bencher) { +fn bench_deserializer_1_5(b: &mut Bencher) { b.iter(|| { let mut map = HashMap::new(); map.insert("1".to_strbuf(), Some('a')); diff --git a/bench_vec.rs b/bench_vec.rs index dd98c35e..62d37969 100644 --- a/bench_vec.rs +++ b/bench_vec.rs @@ -373,7 +373,7 @@ fn run_deserializer< } #[bench] -fn bench_decoder_vec_int_000(b: &mut Bencher) { +fn bench_decoder_int_000(b: &mut Bencher) { b.iter(|| { let v: Vec = vec!(); run_decoder(decoder::IntDecoder::new(v.clone()), v) @@ -381,7 +381,7 @@ fn bench_decoder_vec_int_000(b: &mut Bencher) { } #[bench] -fn bench_decoder_vec_int_003(b: &mut Bencher) { +fn bench_decoder_int_003(b: &mut Bencher) { b.iter(|| { let v: Vec = vec!(1, 2, 3); run_decoder(decoder::IntDecoder::new(v.clone()), v) @@ -389,7 +389,7 @@ fn bench_decoder_vec_int_003(b: &mut Bencher) { } #[bench] -fn bench_decoder_vec_int_100(b: &mut Bencher) { +fn bench_decoder_int_100(b: &mut Bencher) { b.iter(|| { let v: Vec = range(0, 100).collect(); run_decoder(decoder::IntDecoder::new(v.clone()), v) @@ -397,7 +397,7 @@ fn bench_decoder_vec_int_100(b: &mut Bencher) { } #[bench] -fn bench_decoder_vec_u8_000(b: &mut Bencher) { +fn bench_decoder_u8_000(b: &mut Bencher) { b.iter(|| { let v: Vec = vec!(); run_decoder(decoder::U8Decoder::new(v.clone()), v) @@ -405,7 +405,7 @@ fn bench_decoder_vec_u8_000(b: &mut Bencher) { } #[bench] -fn bench_decoder_vec_u8_003(b: &mut Bencher) { +fn bench_decoder_u8_003(b: &mut Bencher) { b.iter(|| { let v: Vec = vec!(1, 2, 3); run_decoder(decoder::U8Decoder::new(v.clone()), v) @@ -413,7 +413,7 @@ fn bench_decoder_vec_u8_003(b: &mut Bencher) { } #[bench] -fn bench_decoder_vec_u8_100(b: &mut Bencher) { +fn bench_decoder_u8_100(b: &mut Bencher) { b.iter(|| { let v: Vec = range(0u8, 100).collect(); run_decoder(decoder::U8Decoder::new(v.clone()), v) @@ -421,7 +421,7 @@ fn bench_decoder_vec_u8_100(b: &mut Bencher) { } #[bench] -fn bench_deserializer_vec_int_000(b: &mut Bencher) { +fn bench_deserializer_int_000(b: &mut Bencher) { b.iter(|| { let v: Vec = vec!(); run_deserializer(deserializer::IntDeserializer::new(v.clone()), v) @@ -429,7 +429,7 @@ fn bench_deserializer_vec_int_000(b: &mut Bencher) { } #[bench] -fn bench_deserializer_vec_int_003(b: &mut Bencher) { +fn bench_deserializer_int_003(b: &mut Bencher) { b.iter(|| { let v: Vec = vec!(1, 2, 3); run_deserializer(deserializer::IntDeserializer::new(v.clone()), v) @@ -437,7 +437,7 @@ fn bench_deserializer_vec_int_003(b: &mut Bencher) { } #[bench] -fn bench_deserializer_vec_int_100(b: &mut Bencher) { +fn bench_deserializer_int_100(b: &mut Bencher) { b.iter(|| { let v: Vec = range(0, 100).collect(); run_deserializer(deserializer::IntDeserializer::new(v.clone()), v) @@ -445,7 +445,7 @@ fn bench_deserializer_vec_int_100(b: &mut Bencher) { } #[bench] -fn bench_deserializer_vec_u8_000(b: &mut Bencher) { +fn bench_deserializer_u8_000(b: &mut Bencher) { b.iter(|| { let v: Vec = vec!(); run_deserializer(deserializer::U8Deserializer::new(v.clone()), v) @@ -453,7 +453,7 @@ fn bench_deserializer_vec_u8_000(b: &mut Bencher) { } #[bench] -fn bench_deserializer_vec_u8_003(b: &mut Bencher) { +fn bench_deserializer_u8_003(b: &mut Bencher) { b.iter(|| { let v: Vec = vec!(1, 2, 3); run_deserializer(deserializer::U8Deserializer::new(v.clone()), v) @@ -461,7 +461,7 @@ fn bench_deserializer_vec_u8_003(b: &mut Bencher) { } #[bench] -fn bench_deserializer_vec_u8_100(b: &mut Bencher) { +fn bench_deserializer_u8_100(b: &mut Bencher) { b.iter(|| { let v: Vec = range(0u8, 100).collect(); run_deserializer(deserializer::U8Deserializer::new(v.clone()), v) diff --git a/de.rs b/de.rs index 5d196701..35c65562 100644 --- a/de.rs +++ b/de.rs @@ -473,7 +473,6 @@ deserialize_tuple! { T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, } #[cfg(test)] mod tests { use collections::HashMap; - use test::Bencher; use serialize::Decoder; @@ -888,24 +887,4 @@ mod tests { assert_eq!(value, map); } - - #[bench] - fn bench_token_deserializer(b: &mut Bencher) { - b.iter(|| { - let tokens = vec!( - SeqStart(3), - Int(5), - - Int(6), - - Int(7), - End, - ); - - let mut d = TokenDeserializer::new(tokens); - let value: Vec = Deserializable::deserialize(&mut d).unwrap(); - - assert_eq!(value, vec!(5, 6, 7)); - }) - } } diff --git a/serde.rs b/serde.rs index 0c415b20..b0dda2ae 100644 --- a/serde.rs +++ b/serde.rs @@ -17,8 +17,8 @@ pub mod de; //#[cfg(test)] //pub mod bench_bytes; -//#[cfg(test)] -//pub mod bench_enum; +#[cfg(test)] +pub mod bench_enum; #[cfg(test)] pub mod bench_struct;