Skip to content
/ caches-rs Public

This is a Rust implementation for popular caches (support no_std).

Notifications You must be signed in to change notification settings

al8n/caches-rs

Repository files navigation

Caches

github Build codecov

docs.rs crates.io crates.io

license

This is a Rust implementation for popular caches (support no_std).

See Introduction, Installation and Usages for more details.

English | 简体中文

Introduction

The MSRV for this crate is 1.55.0.

  • LRU
    • LRUCache, SegmentedCache, TwoQueueCache and AdaptiveCache.
  • LFU
    • TinyLFU, SampledLFU, and WTinyLFUCache

Installation

  • std
    [dependencies]
    caches = "0.2" 
  • no_std
    [dependencies]
    caches = {version: "0.2", default-features = false }

Usages

Please see examples.

Roadmap

  • 0.2: Support TinyLFU, SampledLFU, WTinyLFUCache
  • 0.3: Support LIRS, DLIRS, DSLRU
  • 0.4: Add ttl feature

Related

If you want a high-performance thread-safe modern cache, please see https://crates.io/crates/stretto

Acknowledgments

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.