Pandabot/vendor/amphp/sql-common/test/Stub/StubSqlResult.php

42 lines
824 B
PHP
Executable file

<?php declare(strict_types=1);
namespace Amp\Sql\Common\Test\Stub;
use Amp\Sql\SqlResult;
final class StubSqlResult implements SqlResult, \IteratorAggregate
{
private readonly array $rows;
private int $current = 0;
public function __construct(array $rows, private readonly ?SqlResult $next = null)
{
$this->rows = \array_values($rows);
}
public function getIterator(): \Iterator
{
yield from $this->rows;
}
public function fetchRow(): ?array
{
return $this->rows[$this->current++] ?? null;
}
public function getNextResult(): ?SqlResult
{
return $this->next;
}
public function getRowCount(): ?int
{
return \count($this->rows);
}
public function getColumnCount(): ?int
{
return null;
}
}