> */ private array $hashes = []; public function increment(string $hash, string $field, int $by = 1): void { $this->hashes[$hash][$field] = (string) (((int) ($this->hashes[$hash][$field] ?? 0)) + $by); } public function put(string $hash, string $field, string $value): void { $this->hashes[$hash][$field] = $value; } /** @return array */ public function drain(string $hash): array { $out = $this->hashes[$hash] ?? []; unset($this->hashes[$hash]); return $out; } }