pub mod l2;
pub mod l3;
pub mod smart;
pub use l2::{
CacheEntry, L2Cache, L2CacheConfig, DEFAULT_CACHE_CAPACITY, DEFAULT_CLEANUP_INTERVAL_SECS,
DEFAULT_EVICTION_THRESHOLD, DEFAULT_TTL_SECS,
};
#[cfg(feature = "redis")]
pub use l3::{L3Cache, L3CacheConfig, L3CacheStats};
#[cfg(not(feature = "redis"))]
pub mod l3_stub {
use crate::cache::l2::L2Cache;
pub type L3Cache = L2Cache;
}
#[cfg(not(feature = "redis"))]
pub use l3_stub::L3Cache;
pub use smart::{CacheStats as SmartCacheStats, SmartCacheStrategy};