cachekit 0.8.0

High-performance cache primitives with pluggable eviction policies (LRU, LFU, FIFO, 2Q, Clock-PRO, S3-FIFO) and optional metrics.
Documentation
pub mod clock_ring;
pub mod fixed_history;
pub mod frequency_buckets;
pub mod ghost_list;
pub mod interner;
pub mod intrusive_list;
pub mod lazy_heap;
pub mod shard;
pub mod slot_arena;

#[cfg(feature = "concurrency")]
pub use clock_ring::ConcurrentClockRing;
pub use clock_ring::{
    ClockRing, ClockRingError, IntoIter, Iter, IterMut, Keys, KeysAreTrusted, MAX_CAPACITY, Values,
    ValuesMut,
};
pub use fixed_history::{FixedHistory, MAX_K as FIXED_HISTORY_MAX_K};
pub use frequency_buckets::{
    BucketEntries, BucketIds, DEFAULT_BUCKET_PREALLOC, FrequencyBucketEntryDebug,
    FrequencyBucketEntryMeta, FrequencyBuckets, FrequencyBucketsHandle,
    Iter as FrequencyBucketsIter,
};
#[cfg(feature = "concurrency")]
pub use frequency_buckets::{ShardedFrequencyBucketEntryMeta, ShardedFrequencyBuckets};
pub use ghost_list::GhostList;
pub use interner::{InternerError, KeyInterner};
#[cfg(feature = "concurrency")]
pub use intrusive_list::ConcurrentIntrusiveList;
pub use intrusive_list::IntrusiveList;
pub use lazy_heap::{
    IntoIter as LazyHeapIntoIter, Iter as LazyHeapIter, LazyMinHeap, LazyMinHeapError,
    MAX_CAPACITY as LAZY_HEAP_MAX_CAPACITY,
};
pub use shard::{MAX_SHARDS as SHARD_SELECTOR_MAX_SHARDS, ShardSelector};
#[cfg(feature = "concurrency")]
pub use slot_arena::{ConcurrentSlotArena, ShardedSlotArena, ShardedSlotId};
pub use slot_arena::{
    IntoIter as SlotArenaIntoIter, Iter as SlotArenaIter, IterIds as SlotArenaIterIds,
    IterMut as SlotArenaIterMut,
};
pub use slot_arena::{SlotArena, SlotId};