//! Example demonstrating the Clock cache policy.
//!
//! Clock approximates LRU by giving referenced entries a second chance during
//! eviction instead of moving them through a linked list on every hit.
//!
//! Run with: cargo run --example basic_clock
use ClockCache;
use Cache;
// Expected output:
// contains 1? true
// contains 2? false
// len: 3
//
// Explanation: key 1 had its reference bit set before the cache filled, so the
// sweep clears that bit and skips it, then evicts key 2 as the first
// unreferenced entry.