From eb566d80afbbf01b934743d722b5c0456354b707 Mon Sep 17 00:00:00 2001 From: Warxcell Date: Thu, 8 Apr 2021 11:52:29 +0300 Subject: [PATCH] change typehints to iterable, so we can accept Generators. --- src/Filters.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Filters.php b/src/Filters.php index 043a2e4..bc4e69f 100644 --- a/src/Filters.php +++ b/src/Filters.php @@ -35,7 +35,7 @@ private function getFilter($name): callable /** @return QueryBuilder */ abstract public function createQueryBuilder($alias, $indexBy = null); - public function createQueryBuilderByFilters(string $alias, array $filterBy, $indexBy = null): QueryBuilder + public function createQueryBuilderByFilters(string $alias, iterable $filterBy, string $indexBy = null): QueryBuilder { $queryBuilder = $this->createQueryBuilder($alias, $indexBy); $queryBuilder->filters = []; @@ -66,22 +66,22 @@ public function appendFilter(QueryBuilder $queryBuilder, string $alias, string $ return $queryBuilder->filters[$filterName] = true; } - public function findOneByFilters(array $filterBy) + public function findOneByFilters(iterable $filterBy) { return $this->createQueryBuilderByFilters('entity', $filterBy)->getQuery()->getOneOrNullResult(); } - public function findByFilters(array $filterBy) + public function findByFilters(iterable $filterBy) { return $this->createQueryBuilderByFilters('entity', $filterBy)->getQuery()->getResult(); } - public function getSingleResultByFilters(array $filterBy) + public function getSingleResultByFilters(iterable $filterBy) { return $this->createQueryBuilderByFilters('entity', $filterBy)->getQuery()->getSingleResult(); } - public function countByFilters(array $filterBy): int + public function countByFilters(iterable $filterBy): int { return (int)$this ->createQueryBuilderByFilters('entity', $filterBy)