Viewing file: InMemoryCache.php (999 B) -rwxr-x--- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
declare(strict_types=1);
namespace PhpMyAdmin\MoTranslator\Cache;
use PhpMyAdmin\MoTranslator\MoParser;
use function array_key_exists;
final class InMemoryCache implements CacheInterface, GetAllInterface { /** @var array<string, string> */ private $cache;
public function __construct(MoParser $parser) { $this->cache = []; $parser->parseIntoCache($this); }
public function get(string $msgid): string { return array_key_exists($msgid, $this->cache) ? $this->cache[$msgid] : $msgid; }
public function set(string $msgid, string $msgstr): void { $this->cache[$msgid] = $msgstr; }
public function has(string $msgid): bool { return array_key_exists($msgid, $this->cache); }
public function setAll(array $translations): void { $this->cache = $translations; }
/** * @inheritDoc */ public function getAll(): array { return $this->cache; } }
|