9 个版本

使用旧的 Rust 2015

0.1.2 2019 年 3 月 21 日
0.1.1 2017 年 3 月 29 日
0.1.0 2016 年 10 月 7 日
0.0.7 2016 年 2 月 19 日
0.0.2 2015 年 3 月 26 日

#27缓存

Download history 297306/week @ 2024-03-14 297893/week @ 2024-03-21 308307/week @ 2024-03-28 312926/week @ 2024-04-04 309877/week @ 2024-04-11 316314/week @ 2024-04-18 303893/week @ 2024-04-25 296027/week @ 2024-05-02 293839/week @ 2024-05-09 319497/week @ 2024-05-16 317131/week @ 2024-05-23 322938/week @ 2024-05-30 320017/week @ 2024-06-06 323808/week @ 2024-06-13 321039/week @ 2024-06-20 274551/week @ 2024-06-27

1,307,088 每月下载量
1,584 个 Crates 中使用 (直接使用 68)

MIT/Apache

20KB
291 代码行

警告:由于维护者资源不足,该项目处于维护模式

它运行良好,但通常将不再进行改进。

我们目前只接受以下更改

  • 以保持使用最新版本的 Rust 或其依赖项编译
  • 具有最小的审查要求,如文档更改(因此不是全新的 API)。

一个存储有限数量键值对的缓存。

文档可在 https://contain-rs.github.io/lru-cache/lru_cache 获取。


lib.rs:

一个存储有限数量键值对的缓存。当缓存容量超出时,最不经常使用的对(其中“使用”意味着查找或将对放入缓存)将自动删除。

示例

use lru_cache::LruCache;

let mut cache = LruCache::new(2);

cache.insert(1, 10);
cache.insert(2, 20);
cache.insert(3, 30);
assert!(cache.get_mut(&1).is_none());
assert_eq!(*cache.get_mut(&2).unwrap(), 20);
assert_eq!(*cache.get_mut(&3).unwrap(), 30);

cache.insert(2, 22);
assert_eq!(*cache.get_mut(&2).unwrap(), 22);

cache.insert(6, 60);
assert!(cache.get_mut(&3).is_none());

cache.set_capacity(1);
assert!(cache.get_mut(&2).is_none());

依赖项

~220KB