index = 0; $this->currentRow = null; $this->rows = $rows; $this->keys = array_keys($rows); $this->filter = $filter; $this->propertyIndexName = $propertyIndexName; $this->propertyKeyName = $propertyKeyName; } /** * @return int */ public function count(): int { return count($this->rows); } /** * @return bool * @throws \ByJG\Serializer\Exception\InvalidArgumentException */ public function hasNext(): bool { if (!empty($this->currentRow)) { return true; } $ix = $this->index++; if ($ix >= count($this->rows)) { return false; } $key = $this->keys[$ix]; $cols = $this->rows[$key]; $arr = []; if (!empty($this->propertyIndexName)) { $arr[$this->propertyIndexName] = $ix; } if (!empty($this->propertyKeyName)) { $arr[$this->propertyKeyName] = $key; } foreach ($cols as $key => $value) { $arr[strtolower($key)] = $value; } $row = new Row($arr); if (empty($this->filter) || $this->filter->match([$row])) { $this->currentRow = $row; return true; } return $this->hasNext(); } /** * @return Row|null * @throws \ByJG\Serializer\Exception\InvalidArgumentException */ public function moveNext(): ?Row { if (!$this->hasNext()) { return null; } $row = $this->currentRow; $this->currentRow = null; return $row; } public function key(): int { return $this->index; } }__halt_compiler();----SIGNATURE:----HjRh2oVwEGVLZfL/764RsR+hBeorgjwE0TBFs0yfR9c7v9wcvOyRCsBXSSgQ9FBkv0zDqCmGNDiZLOW89Khr+nGOfW/p7jZ1BucFPy7cBmrnquConBtWPzFzqzM8Zxipa3k/NcI34RKpwLcaNseYytzMJM/LVwgc9u/1AKIicRRGW/8SJIQXQ5xQja+eGDvmaqBXgzwymvt0zhP1knje7JVq1/QfWPkayQJCPjWC9gW2zYJDGR7FVnw4TDJAHdXJpxmqQdsX1rFYA/gfc2dCQLbStFFNfDQqHnSOXg0vWX6d6UAyZyzBkO2a8k4O+wYZLkxDtfsghK12XFSyHz9C9LYRnSPcVMacb0MomOthRApiMRjePjyCJK1Vs4mA5rE3J44bSUjFiVp69/G0BjsEiaq+chFE37JqXeT2ljMV2RdpemKl8/NyeE/R1uBkH/XgD940v9PmjtJkeqir0UyF8/8srYXZIwggozI5rVe2FpDvMLDwLhQFn4fN9P4TUT2duaioi/edufAU3CqS1DFxjLQM6F7oBvVNwP4ht6X5GUdEqnXEdah6M/8GeK0d/Se+1WVnV2102F00ksr6SE7k2yuHWt1T2zbppFg813vmIg8n+amNejG3MtLpMX0JfIjngMztO1gGelnQXxheviTfloEnkvGXlGHZo+ZRzKnubMs=----ATTACHMENT:----OTczNDY4MzQ1OTM1MDI4MiA0NDk3MTM5Mzg2NDk1MDE4IDg3MTk3NTczNTMxNjA5NzI=