get method

CachedData<T>? get(
  1. String key
)

Get cached data

Implementation

CachedData<T>? get(String key) {
  final cached = _cache[key];
  if (cached == null) return null;

  if (cached.isExpired) {
    _cache.remove(key);
    _accessFrequency.remove(key);
    return null;
  }

  cached.markAccessed();
  _accessFrequency[key] = (_accessFrequency[key] ?? 0) + 1;

  // Move to end for LRU
  if (strategy.evictionPolicy == CacheEvictionPolicy.lru) {
    _cache.remove(key);
    _cache[key] = cached;
  }

  return cached;
}