*/ final class RuntimeCache implements Cache { /** @var array */ private array $entries = []; public function __construct( /** @var Cache */ private Cache $delegate, ) {} public function get(string $key, mixed ...$arguments): mixed { return $this->entries[$key] ??= $this->delegate->get($key, ...$arguments); } public function set(string $key, CacheEntry $entry): void { $this->delegate->set($key, $entry); } public function clear(): void { $this->entries = []; $this->delegate->clear(); } }