Skip to content

Commit

Permalink
No commit message
Browse files Browse the repository at this point in the history
  • Loading branch information
NikolaRHristov committed Nov 30, 2024
1 parent 27a6080 commit 5ff9f25
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 0 deletions.
4 changes: 4 additions & 0 deletions Source/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ fn cargo_is_id_start(b:&mut Bencher) {
let string = iter::repeat('a').take(4096).collect::<String>();

b.bytes = string.len() as u64;

b.iter(|| string.chars().all(super::UnicodeID::is_id_start));
}

Expand All @@ -33,6 +34,7 @@ fn stdlib_is_id_start(b:&mut Bencher) {
let string = iter::repeat('a').take(4096).collect::<String>();

b.bytes = string.len() as u64;

b.iter(|| string.chars().all(char::is_id_start));
}

Expand All @@ -42,6 +44,7 @@ fn cargo_id_continue(b:&mut Bencher) {
let string = iter::repeat('a').take(4096).collect::<String>();

b.bytes = string.len() as u64;

b.iter(|| string.chars().all(super::UnicodeID::is_id_continue));
}

Expand All @@ -51,6 +54,7 @@ fn stdlib_id_continue(b:&mut Bencher) {
let string = iter::repeat('a').take(4096).collect::<String>();

b.bytes = string.len() as u64;

b.iter(|| string.chars().all(char::is_id_continue));
}

Expand Down
10 changes: 10 additions & 0 deletions benches/id.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,31 +6,41 @@ use unicode_id::UnicodeID;

fn bench_unicode_id(c:&mut Criterion) {
let unicode_chars = chars(1..0x3000);

let ascii_chars = chars(1..0x80);

let mut group = c.benchmark_group("UnicodeID");

group.throughput(Throughput::Bytes(unicode_chars.len() as u64));

group.bench_with_input(
BenchmarkId::new("is_id_start", "unicode"),
&unicode_chars,
|b, chars| b.iter(|| chars.iter().copied().map(UnicodeID::is_id_start).last()),
);

group.throughput(Throughput::Bytes(ascii_chars.len() as u64));

group.bench_with_input(BenchmarkId::new("is_id_start", "ascii"), &ascii_chars, |b, chars| {
b.iter(|| chars.iter().copied().map(UnicodeID::is_id_start).last())
});

group.throughput(Throughput::Bytes(unicode_chars.len() as u64));

group.bench_with_input(
BenchmarkId::new("is_id_continue", "unicode"),
&unicode_chars,
|b, chars| b.iter(|| chars.iter().copied().map(UnicodeID::is_id_continue).last()),
);

group.throughput(Throughput::Bytes(ascii_chars.len() as u64));

group.bench_with_input(
BenchmarkId::new("is_id_continue", "ascii"),
&ascii_chars,
|b, chars| b.iter(|| chars.iter().copied().map(UnicodeID::is_id_continue).last()),
);

group.finish();
}

Expand Down

0 comments on commit 5ff9f25

Please sign in to comment.