getConnectUri(), (new ConnectContext())->withConnectTimeout($config->getTimeout()) ); if ($config->hasPassword()) { $connector = new Authenticator($config->getPassword(), $connector); } if ($config->getDatabase() !== 0) { $connector = new DatabaseSelector($config->getDatabase(), $connector); } return $connector; } function createRedisClient(RedisConfig|string $config, ?RedisConnector $connector = null): RedisClient { return new RedisClient(new ReconnectingRedisLink(createRedisConnector($config, $connector))); }