16855e09eSopenharmony_ci#[macro_use] 26855e09eSopenharmony_ciextern crate criterion; 36855e09eSopenharmony_ci 46855e09eSopenharmony_ci#[global_allocator] 56855e09eSopenharmony_cistatic ALLOC: jemallocator::Jemalloc = jemallocator::Jemalloc; 66855e09eSopenharmony_ci 76855e09eSopenharmony_ciuse criterion::Criterion; 86855e09eSopenharmony_ciuse nom::number::complete; 96855e09eSopenharmony_ci 106855e09eSopenharmony_cifn parser(i: &[u8]) -> nom::IResult<&[u8], u64> { 116855e09eSopenharmony_ci complete::be_u64(i) 126855e09eSopenharmony_ci} 136855e09eSopenharmony_ci 146855e09eSopenharmony_cifn number(c: &mut Criterion) { 156855e09eSopenharmony_ci let data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; 166855e09eSopenharmony_ci 176855e09eSopenharmony_ci parser(&data[..]).expect("should parse correctly"); 186855e09eSopenharmony_ci c.bench_function("number", move |b| { 196855e09eSopenharmony_ci b.iter(|| parser(&data[..]).unwrap()); 206855e09eSopenharmony_ci }); 216855e09eSopenharmony_ci} 226855e09eSopenharmony_ci 236855e09eSopenharmony_cicriterion_group!(benches, number); 246855e09eSopenharmony_cicriterion_main!(benches); 25