21 lines
495 B
Rust
21 lines
495 B
Rust
use criterion::{black_box, criterion_group, Criterion};
|
|
|
|
use anes::parser::Parser;
|
|
|
|
pub fn parser(c: &mut Criterion) {
|
|
const XTERM_MOUSE: &str = "\x1B[<28;20;10;m";
|
|
|
|
let mut parser = Parser::default();
|
|
|
|
c.bench_function("advance and consume", |b| {
|
|
let input = XTERM_MOUSE.as_bytes();
|
|
|
|
b.iter(|| {
|
|
parser.advance(black_box(input), black_box(true));
|
|
while let Some(_) = parser.next() {}
|
|
})
|
|
});
|
|
}
|
|
|
|
criterion_group!(benches, parser);
|