Skip to content

Commit a155b2b

Browse files
committed
Remove hashbrown and arrayvec
hashbrown is no longer needed since the Rust compiler is updated to 1.36. Also, remove arrayvec since smallvec provides almost same functionality.
1 parent dc419f1 commit a155b2b

File tree

2 files changed

+0
-28
lines changed

2 files changed

+0
-28
lines changed

Cargo.toml

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,8 @@ itertools = "=0.8.0"
4242
# 高速なハッシュ関数
4343
rustc-hash = "=1.0.1"
4444

45-
# 高速なHashMap
46-
# Rust 1.36.0からは標準ライブラリのHashMapがこれに置き換わる。(AtCoder 2019年言語
47-
# アップデートではそれより古い1.35.0を採用) ハッシュ関数として従来のSipHashが用いられる
48-
# ことに注意。(SipHashは暗号強度を持つため計算量が多く低速)
49-
hashbrown = "=0.5.0"
50-
5145
# 固定配列上のベクタ。ヒープ領域でなくスタック領域にアロケートされるので高速かもしれない
5246
smallvec = "=0.6.10"
53-
arrayvec = "=0.4.11"
5447

5548
# 標準ライブラリのVecやHashMapに対応する永続データ構造
5649
# 永続データ構造は関数型言語によく見られるデータ構造で、要素を更新しても、そのデータ構造の

src/main.rs

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,7 @@ fn main() -> UnitResult {
1212
run_superslice();
1313
run_itertools();
1414
run_rustc_hash();
15-
run_hashbrown();
1615
// run_smallvec();
17-
// run_arrayvec();
1816
// run_im_rc();
1917
// run_num();
2018
run_rand_family()?;
@@ -359,26 +357,7 @@ fn test_rustc_hash() {
359357
run_rustc_hash();
360358
}
361359

362-
// hashbrown
363-
fn run_hashbrown() {
364-
use hashbrown::HashMap;
365-
366-
let mut map = [('c', "Cindy"), ('a', "Alice"), ('b', "Bob")]
367-
.iter()
368-
.map(|(c, s)| (*c, s.to_string()))
369-
.collect::<HashMap<_, _>>();
370-
map.entry('d').or_insert("Denis".to_string());
371-
map.insert('a', "Alexa".to_string());
372-
assert_eq!(map.len(), 4);
373-
}
374-
375-
#[test]
376-
fn test_hashbrown() {
377-
run_hashbrown();
378-
}
379-
380360
// smallvec
381-
// arrayvec
382361

383362
// im-rc
384363

0 commit comments

Comments
 (0)