pub struct IntelligentCacheManager<K, V>where
K: Clone + Hash + Eq + Send + Sync + Debug + 'static,
V: Clone + Send + Sync + Debug + 'static,{ /* private fields */ }Expand description
Intelligent Cache Manager
Coordinates multi-level caching with predictive preheating and adaptive tuning. Provides unified interface for all cache operations while optimizing performance.
Implementations§
Source§impl<K, V> IntelligentCacheManager<K, V>
impl<K, V> IntelligentCacheManager<K, V>
Sourcepub fn new(config: UnifiedCacheConfig) -> Self
pub fn new(config: UnifiedCacheConfig) -> Self
Create a new intelligent cache manager
Sourcepub fn config(&self) -> &UnifiedCacheConfig
pub fn config(&self) -> &UnifiedCacheConfig
Get cache configuration
Sourcepub fn preheater(&self) -> Arc<PredictivePreheater<K>>
pub fn preheater(&self) -> Arc<PredictivePreheater<K>>
Get predictive preheater
Sourcepub fn tuner(&self) -> Arc<AdaptiveTuner>
pub fn tuner(&self) -> Arc<AdaptiveTuner>
Get adaptive tuner
Sourcepub fn monitor(&self) -> Arc<PerformanceMonitor>
pub fn monitor(&self) -> Arc<PerformanceMonitor>
Get performance monitor
Trait Implementations§
Source§impl<K, V> Debug for IntelligentCacheManager<K, V>
impl<K, V> Debug for IntelligentCacheManager<K, V>
Source§impl<K, V> UnifiedCache<K, V> for IntelligentCacheManager<K, V>
impl<K, V> UnifiedCache<K, V> for IntelligentCacheManager<K, V>
Source§fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 K,
) -> Pin<Box<dyn Future<Output = Option<V>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 K,
) -> Pin<Box<dyn Future<Output = Option<V>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get a value from the cache
Source§fn put<'life0, 'async_trait>(
&'life0 self,
key: K,
value: V,
) -> Pin<Box<dyn Future<Output = Result<(), CacheError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn put<'life0, 'async_trait>(
&'life0 self,
key: K,
value: V,
) -> Pin<Box<dyn Future<Output = Result<(), CacheError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Put a value into the cache
Source§fn remove<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 K,
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn remove<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 K,
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Remove a value from the cache
Source§fn contains_key<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 K,
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn contains_key<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 K,
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Check if a key exists in the cache
Source§fn get_stats<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = UnifiedCacheStats> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_stats<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = UnifiedCacheStats> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get cache statistics
Source§fn clear<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), CacheError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn clear<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), CacheError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Clear all cache entries
Source§fn size<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = usize> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn size<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = usize> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get cache size (total entries across all levels)
Source§fn is_empty<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn is_empty<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Check if cache is empty
Source§fn capacity<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = usize> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn capacity<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = usize> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get cache capacity (total across all levels)
Source§fn cache_type(&self) -> &'static str
fn cache_type(&self) -> &'static str
Get cache type identifier
Auto Trait Implementations§
impl<K, V> Freeze for IntelligentCacheManager<K, V>
impl<K, V> !RefUnwindSafe for IntelligentCacheManager<K, V>
impl<K, V> Send for IntelligentCacheManager<K, V>
impl<K, V> Sync for IntelligentCacheManager<K, V>
impl<K, V> Unpin for IntelligentCacheManager<K, V>
impl<K, V> !UnwindSafe for IntelligentCacheManager<K, V>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more