1#[macro_use]
2extern crate criterion;
3
4#[global_allocator]
5static ALLOC: jemallocator::Jemalloc = jemallocator::Jemalloc;
6
7use criterion::Criterion;
8use nom::number::complete;
9
10fn parser(i: &[u8]) -> nom::IResult<&[u8], u64> {
11  complete::be_u64(i)
12}
13
14fn number(c: &mut Criterion) {
15  let data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
16
17  parser(&data[..]).expect("should parse correctly");
18  c.bench_function("number", move |b| {
19    b.iter(|| parser(&data[..]).unwrap());
20  });
21}
22
23criterion_group!(benches, number);
24criterion_main!(benches);
25