Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,8 @@
- Bug #234: Fix handling of `null` values in `IterableDataReader` (@vjik)
- New #236: Add `PaginatorInterface::getFilter()` method (@vjik)
- Chg #241: Remove `FilterHandlerInterface` interface (@vjik)
- Chg #242: Change `IterableDataReader::withAddedFilterHandlers()` to `$addFilterHandlers` constructor parameter (@vjik)
- Chg #242, #244: Change `IterableDataReader::withAddedFilterHandlers()` to `$extraFilterHandlers` constructor parameter
(@vjik)

## 1.0.1 January 25, 2023

Expand Down
6 changes: 3 additions & 3 deletions src/Reader/Iterable/IterableDataReader.php
Original file line number Diff line number Diff line change
Expand Up @@ -62,13 +62,13 @@ final class IterableDataReader implements DataReaderInterface

/**
* @param iterable $data Data to iterate.
* @param IterableFilterHandlerInterface[] $addFilterHandlers
* @param IterableFilterHandlerInterface[] $extraFilterHandlers
* @psalm-param iterable<TKey, TValue> $data
*/
public function __construct(
private readonly iterable $data,
ValueReaderInterface $valueReader = new FlatValueReader(),
array $addFilterHandlers = [],
array $extraFilterHandlers = [],
) {
$filterHandlers = $this->prepareFilterHandlers([
new AllHandler(),
Expand All @@ -85,7 +85,7 @@ public function __construct(
new LessThanOrEqualHandler(),
new LikeHandler(),
new NotHandler(),
...$addFilterHandlers,
...$extraFilterHandlers,
]);
$this->context = new Context($filterHandlers, $valueReader);
$this->filter = new All();
Expand Down
4 changes: 2 additions & 2 deletions tests/Reader/Iterable/IterableDataReaderTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -380,7 +380,7 @@ public function testGeneratorAsDataSet(): void
public function testCustomFilter(): void
{
$filter = new AndX(new GreaterThan('id', 0), new Digital('name'));
$reader = (new IterableDataReader(self::DEFAULT_DATASET, addFilterHandlers: [new DigitalHandler()]))
$reader = (new IterableDataReader(self::DEFAULT_DATASET, extraFilterHandlers: [new DigitalHandler()]))
->withFilter($filter);

$filtered = $reader->read();
Expand Down Expand Up @@ -409,7 +409,7 @@ public function match(
}
};

$dataReader = (new IterableDataReader(self::DEFAULT_DATASET, addFilterHandlers: [$customEquals]))
$dataReader = (new IterableDataReader(self::DEFAULT_DATASET, extraFilterHandlers: [$customEquals]))
->withSort($sort);

$dataReader = $dataReader->withFilter(new Equals('id', 100));
Expand Down
Loading