pub mod score;
pub mod memory;
pub mod interface;
pub mod config_validation;
#[cfg(feature = "dragonfly")]
pub mod dragonfly;
#[cfg(feature = "aerospike")]
pub mod aerospike;
#[cfg(any(
feature = "memory",
feature = "redis",
feature = "minimal",
feature = "core",
feature = "full"
))]
pub mod custom_tiered;
pub use interface::CacheSetItem;
pub use interface::{CacheBackend, CacheConnector, CacheReader, CacheWriter};
pub use interface::{AtomicCacheWriter, SyncAtomicCacheWriter};
pub use interface::{SyncCacheBackend, SyncCacheConnector, SyncCacheReader, SyncCacheWriter};
pub use interface::BackendKind;
#[cfg(feature = "lua-script")]
pub use interface::LuaExecutor;
pub use config_validation::ConfigValidation;
#[cfg(feature = "dragonfly")]
pub use dragonfly::{DragonflyBackend, DragonflyRestrictions};
#[cfg(feature = "aerospike")]
pub use aerospike::{AerospikeBackend, AerospikeConfig};
pub use score::{BackendScore, Scores};
pub use memory::{
DashMapMemoryBackend,
MemoryBackendType,
MokaMemoryBackend,
dashmap_memory,
default_memory_backend,
moka_memory,
};
#[cfg(test)]
pub use memory::MockBackend;
#[cfg(feature = "redis")]
pub use memory::{RedisBackend, RedisBackendBuilder, RedisMode};
#[cfg(any(
feature = "memory",
feature = "redis",
feature = "minimal",
feature = "core",
feature = "full"
))]
pub use custom_tiered::LayerRestriction;
pub use crate::core::{BackendType, CacheLayer};