basic_usage/
basic_usage.rs

1use fifo_cache::FifoCache;
2#[cfg(feature = "ttl")]
3use std::time::Duration;
4
5fn main() {
6  // Create a cache with capacity 1000 and 5-minute TTL
7  let mut cache = FifoCache::new(
8    1000,
9    #[cfg(feature = "ttl")]
10    Duration::from_secs(300)
11  );
12  
13  // Insert some values
14  cache.insert("user:123", "John Doe");
15  cache.insert("user:456", "Jane Smith");
16  cache.insert("config:timeout", "30");
17  
18  // Retrieve values
19  if let Some(name) = cache.get(&"user:123") {
20    println!("Found user: {}", name);
21  }
22  
23  // Cache will automatically evict oldest entries when full
24  // and expire entries after 5 minutes
25  
26  println!("Cache size: {}/{}", cache.len(), cache.max_size());
27  
28  #[cfg(feature = "ttl")]
29  // Manual cleanup of expired entries
30  cache.cleanup_expired();
31}