xref: /third_party/rust/crates/nom/benchmarks/benches/number.rs
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /third_party/rust/crates/nom/benchmarks/benches/
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

Indexes created Thu Nov 07 10:32:03 CST 2024