driver = $manager->getDriver(); } public function __call($name, $arguments) { return $this->driver->{$name}(...$arguments); } public function get($key, $default = null): mixed { return $this->__call(__FUNCTION__, func_get_args()); } public function set($key, $value, $ttl = null): bool { return $this->__call(__FUNCTION__, func_get_args()); } public function delete($key): bool { return $this->__call(__FUNCTION__, func_get_args()); } public function clear(): bool { return $this->__call(__FUNCTION__, func_get_args()); } public function getMultiple($keys, $default = null): iterable { return $this->__call(__FUNCTION__, func_get_args()); } public function setMultiple($values, $ttl = null): bool { return $this->__call(__FUNCTION__, func_get_args()); } public function deleteMultiple($keys): bool { return $this->__call(__FUNCTION__, func_get_args()); } public function has($key): bool { return $this->__call(__FUNCTION__, func_get_args()); } }