Skip to content

Commit 2d8f254

Browse files
Merge pull request #5 from gilice/fxhash
muxml: switch to FxHash
2 parents a28b92e + 85108f3 commit 2d8f254

File tree

3 files changed

+12
-2
lines changed

3 files changed

+12
-2
lines changed

Cargo.lock

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ clap = { version = "4.5.4", features = ["derive"] }
1414
itertools = "0.14.0"
1515
itoa = "1.0.11"
1616
midly = "0.5.3"
17+
rustc-hash = "2.1.1"
1718
yansi = "1.0.1"
1819

1920
[dev-dependencies]

src/backend/muxml/mod.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ use formatters::{
1616
MUXML_INCOMPLETE_DOC_PRELUDE,
1717
};
1818
use fretboard::get_fretboard_note2;
19+
use rustc_hash::FxBuildHasher;
1920
use std::collections::HashMap;
2021
use std::time::Duration;
2122

@@ -54,7 +55,8 @@ pub enum Muxml2TabElement {
5455

5556
impl Muxml2TabElement {
5657
fn write_muxml<A: std::fmt::Write>(
57-
&self, parsed: &ParseResult, buf: &mut A, note_properties: &HashMap<u32, NoteProperties>,
58+
&self, parsed: &ParseResult, buf: &mut A,
59+
note_properties: &HashMap<u32, NoteProperties, impl std::hash::BuildHasher>,
5860
) -> std::fmt::Result {
5961
match self {
6062
Muxml2TabElement::Rest(mut x) => {
@@ -192,7 +194,7 @@ fn gen_muxml2(
192194
debugln!("muxml2: reserved {}", cap);
193195
let mut slur_cnt = 0;
194196
let mut slide_count = 0;
195-
let mut note_properties: HashMap<u32, NoteProperties> = HashMap::new();
197+
let mut note_properties: HashMap<u32, NoteProperties, FxBuildHasher> = HashMap::default();
196198
for measure_idx in 0..number_of_measures {
197199
traceln!("Muxml2: processing measure {}", measure_idx);
198200
let ticks_in_measure = rlen(&parsed.measures[measure_idx].data_range) / 6; // see assumption 2

0 commit comments

Comments
 (0)