25 lines
607 B
Rust
25 lines
607 B
Rust
#[macro_use]
|
|
extern crate criterion;
|
|
|
|
extern crate byte_ngram;
|
|
|
|
use criterion::Criterion;
|
|
|
|
use byte_ngram::*;
|
|
|
|
fn criterion_benchmark(c: &mut Criterion) {
|
|
let data = "Blackmail is such an ugly word. I prefer extortion. The 'x' makes it sound cool.";
|
|
|
|
let len = from_slice(&data[..]).len();
|
|
|
|
c.bench_function("from_slice", |b| {
|
|
b.iter(|| assert_eq!(len, from_slice(&data[..]).len()))
|
|
});
|
|
c.bench_function("ByteNgramReader", |b| {
|
|
b.iter(|| assert_eq!(len, Ngrams::from(&data).count()))
|
|
});
|
|
}
|
|
|
|
criterion_group!(benches, criterion_benchmark);
|
|
criterion_main!(benches);
|