aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRose Hogenson <rosehogenson@posteo.net>2024-01-12 21:16:01 -0800
committerRose Hogenson <rosehogenson@posteo.net>2024-01-12 21:16:01 -0800
commit7fad4a80985243eb5e03d351773e282f0cc05d21 (patch)
tree97f6f39506861157faa323e8f698acb991fa3967
parente1b386a3794a6937828d27da4441669f8b91099f (diff)
downloadeditor-7fad4a80985243eb5e03d351773e282f0cc05d21.tar.zst
Add a new benchmark for Rope::new.
-rw-r--r--Cargo.toml4
-rw-r--r--benches/new.rs11
2 files changed, 15 insertions, 0 deletions
diff --git a/Cargo.toml b/Cargo.toml
index cf6c655..550753c 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -14,3 +14,7 @@ criterion = { version = "0.4", features = ["html_reports"] }
[[bench]]
name = "concat"
harness = false
+
+[[bench]]
+name = "new"
+harness = false
diff --git a/benches/new.rs b/benches/new.rs
new file mode 100644
index 0000000..91b8022
--- /dev/null
+++ b/benches/new.rs
@@ -0,0 +1,11 @@
+use criterion::{black_box, criterion_group, criterion_main, Criterion};
+
+use edit::rope::Rope;
+
+fn criterion_benchmark(c: &mut Criterion) {
+ let bytes = vec![0; 1000000];
+ c.bench_function("new", |b| b.iter(|| Rope::new(black_box(&bytes))));
+}
+
+criterion_group!(benches, criterion_benchmark);
+criterion_main!(benches);