24 lines
791 B
Rust
24 lines
791 B
Rust
use criterion::{black_box, criterion_group, criterion_main, Criterion};
|
|
use pluralizer::{add_irregular_rule, add_uncountable_rule, pluralize, UncountableRule};
|
|
|
|
pub fn pluralizer_bench(c: &mut Criterion) {
|
|
c.bench_function("pluralize 10k calls", |b| {
|
|
b.iter(|| {
|
|
for _ in 0..10_000 {
|
|
black_box(pluralize("house", 2, false));
|
|
}
|
|
})
|
|
});
|
|
|
|
c.bench_function("add rules + pluralize", |b| {
|
|
b.iter(|| {
|
|
let _ = add_irregular_rule("child".to_string(), "children".to_string());
|
|
let _ = add_uncountable_rule(UncountableRule::String("money".to_string()));
|
|
black_box(pluralize("child", 2, false));
|
|
})
|
|
});
|
|
}
|
|
|
|
criterion_group!(benches, pluralizer_bench);
|
|
criterion_main!(benches);
|