jenkins-bot has submitted this change and it was merged.
Change subject: Replace Iterator with Traversable in method parameters
......................................................................
Replace Iterator with Traversable in method parameters
This is split from I5a2e356. This patch focuses exclusively on @param
tags and does not touch any @return tag.
For all methods that are private I narrowed the interface as much as
possible. In most cases the object passed in is a ResultWrapper object,
but never an array. But neither this nor Iterator are the relevant
interfaces for methods that do nothing but iterating via foreach. The
only relevant interface for this is Traversable.
Change-Id: I15f16da3cedac9b0d9ea7b83cde1914d2ef60d0d
---
M client/includes/Changes/AffectedPagesFinder.php
M client/includes/Usage/Sql/EntityUsageTable.php
M client/tests/phpunit/includes/Changes/AffectedPagesFinderTest.php
M lib/includes/store/sql/TermSqlIndex.php
4 files changed, 16 insertions(+), 12 deletions(-)
Approvals:
Adrian Lang: Looks good to me, approved
jenkins-bot: Verified
diff --git a/client/includes/Changes/AffectedPagesFinder.php
b/client/includes/Changes/AffectedPagesFinder.php
index a6d9aa7..145f82c 100644
--- a/client/includes/Changes/AffectedPagesFinder.php
+++ b/client/includes/Changes/AffectedPagesFinder.php
@@ -11,6 +11,7 @@
use InvalidArgumentException;
use Iterator;
use Title;
+use Traversable;
use UnexpectedValueException;
use Wikibase\Change;
use Wikibase\Client\Store\TitleFactory;
@@ -276,11 +277,11 @@
* Filters updates based on namespace. This removes duplicates,
non-existing pages, and pages from
* namespaces that are not considered "enabled" by the namespace
checker.
*
- * @param PageEntityUsages[]|Iterator $usages An array or iterator of
PageEntityUsages.
+ * @param Traversable $usages A traversable of PageEntityUsages.
*
* @return Iterator of PageEntityUsages
*/
- private function filterUpdates( $usages ) {
+ private function filterUpdates( Traversable $usages ) {
$titlesToUpdate = array();
/** @var PageEntityUsages $pageEntityUsages */
diff --git a/client/includes/Usage/Sql/EntityUsageTable.php
b/client/includes/Usage/Sql/EntityUsageTable.php
index 4304c95..56c19d4 100644
--- a/client/includes/Usage/Sql/EntityUsageTable.php
+++ b/client/includes/Usage/Sql/EntityUsageTable.php
@@ -8,6 +8,7 @@
use InvalidArgumentException;
use Iterator;
use MWException;
+use Traversable;
use Wikibase\Client\Usage\EntityUsage;
use Wikibase\Client\Usage\PageEntityUsages;
use Wikibase\DataModel\Entity\EntityId;
@@ -271,11 +272,11 @@
}
/**
- * @param array|Iterator $rows
+ * @param Traversable $rows
*
* @return EntityUsage[]
*/
- private function convertRowsToUsages( $rows ) {
+ private function convertRowsToUsages( Traversable $rows ) {
$usages = array();
foreach ( $rows as $object ) {
@@ -375,11 +376,11 @@
}
/**
- * @param array|Iterator $rows
+ * @param Traversable $rows
*
* @return PageEntityUsages[]
*/
- private function foldRowsIntoPageEntityUsages( $rows ) {
+ private function foldRowsIntoPageEntityUsages( Traversable $rows ) {
$usagesPerPage = array();
foreach ( $rows as $row ) {
diff --git a/client/tests/phpunit/includes/Changes/AffectedPagesFinderTest.php
b/client/tests/phpunit/includes/Changes/AffectedPagesFinderTest.php
index f86dce8..12fc164 100644
--- a/client/tests/phpunit/includes/Changes/AffectedPagesFinderTest.php
+++ b/client/tests/phpunit/includes/Changes/AffectedPagesFinderTest.php
@@ -5,8 +5,8 @@
use ArrayIterator;
use DataValues\DataValue;
use DataValues\StringValue;
-use Iterator;
use Title;
+use Traversable;
use Wikibase\Client\Changes\AffectedPagesFinder;
use Wikibase\Client\Store\TitleFactory;
use Wikibase\Client\Usage\EntityUsage;
@@ -559,7 +559,8 @@
}
/**
- * @param PageEntityUsages[]|Iterator $usagesPerPage An array or
iterator of PageEntityUsages.
+ * @param PageEntityUsages[]|Traversable $usagesPerPage An array or
traversable of
+ * PageEntityUsages.
*
* @return PageEntityUsages[]
*/
diff --git a/lib/includes/store/sql/TermSqlIndex.php
b/lib/includes/store/sql/TermSqlIndex.php
index a3a0ade..a1fc5da 100644
--- a/lib/includes/store/sql/TermSqlIndex.php
+++ b/lib/includes/store/sql/TermSqlIndex.php
@@ -7,6 +7,7 @@
use InvalidArgumentException;
use Iterator;
use MWException;
+use Traversable;
use Wikibase\DataModel\Entity\EntityDocument;
use Wikibase\DataModel\Entity\EntityId;
use Wikibase\DataModel\Entity\Item;
@@ -591,12 +592,12 @@
}
/**
- * @param Iterator $rows
+ * @param Traversable $rows
* @param int $limit
*
- * @return Iterator
+ * @return object[]
*/
- private function getRowsOrderedByWeight( Iterator $rows, $limit = 0 ) {
+ private function getRowsOrderedByWeight( Traversable $rows, $limit = 0
) {
$sortData = array();
$rowMap = array();
@@ -732,7 +733,7 @@
* Modifies the provided terms to use the field names expected by the
interface
* rather then the table field names. Also ensures the values are of
the correct type.
*
- * @param array[]|Iterator $obtainedTerms
+ * @param object[]|Traversable $obtainedTerms
*
* @return TermIndexEntry[]
*/
--
To view, visit https://gerrit.wikimedia.org/r/261372
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I15f16da3cedac9b0d9ea7b83cde1914d2ef60d0d
Gerrit-PatchSet: 2
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Thiemo Mättig (WMDE) <[email protected]>
Gerrit-Reviewer: Adrian Lang <[email protected]>
Gerrit-Reviewer: Aude <[email protected]>
Gerrit-Reviewer: Daniel Kinzler <[email protected]>
Gerrit-Reviewer: Hoo man <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits