From e97fe9de86f8f048f1074b53de2cd12a248d0f80 Mon Sep 17 00:00:00 2001 From: Matias Griese Date: Wed, 31 Mar 2021 22:11:11 +0300 Subject: [PATCH] Fixed phpstan generics --- system/src/Grav/Common/Flex/FlexCollection.php | 3 +-- system/src/Grav/Common/Flex/FlexIndex.php | 3 +-- .../Flex/Types/Generic/GenericCollection.php | 2 +- .../Common/Flex/Types/Generic/GenericIndex.php | 2 +- .../Common/Flex/Types/Pages/PageCollection.php | 2 +- .../Grav/Common/Flex/Types/Pages/PageIndex.php | 2 +- .../Types/UserGroups/UserGroupCollection.php | 2 +- .../Flex/Types/UserGroups/UserGroupIndex.php | 2 +- .../Common/Flex/Types/Users/UserCollection.php | 2 +- .../Grav/Common/Flex/Types/Users/UserIndex.php | 3 +-- .../src/Grav/Framework/Flex/FlexCollection.php | 10 ++++------ system/src/Grav/Framework/Flex/FlexDirectory.php | 3 +-- system/src/Grav/Framework/Flex/FlexIndex.php | 12 +++++------- .../Flex/Interfaces/FlexCollectionInterface.php | 16 +++++++--------- .../Flex/Interfaces/FlexIndexInterface.php | 3 +-- .../Framework/Flex/Pages/FlexPageCollection.php | 9 ++++----- .../Grav/Framework/Flex/Pages/FlexPageIndex.php | 3 +-- .../Framework/Flex/Traits/FlexMediaTrait.php | 4 ++-- 18 files changed, 35 insertions(+), 48 deletions(-) diff --git a/system/src/Grav/Common/Flex/FlexCollection.php b/system/src/Grav/Common/Flex/FlexCollection.php index a4d1bbecd..6429c9e1e 100644 --- a/system/src/Grav/Common/Flex/FlexCollection.php +++ b/system/src/Grav/Common/Flex/FlexCollection.php @@ -18,9 +18,8 @@ use Grav\Common\Flex\Traits\FlexGravTrait; * Class FlexCollection * * @package Grav\Common\Flex - * @template TKey * @template T of \Grav\Framework\Flex\Interfaces\FlexObjectInterface - * @extends \Grav\Framework\Flex\FlexCollection + * @extends \Grav\Framework\Flex\FlexCollection */ abstract class FlexCollection extends \Grav\Framework\Flex\FlexCollection { diff --git a/system/src/Grav/Common/Flex/FlexIndex.php b/system/src/Grav/Common/Flex/FlexIndex.php index d73f010ac..44b6fdd6e 100644 --- a/system/src/Grav/Common/Flex/FlexIndex.php +++ b/system/src/Grav/Common/Flex/FlexIndex.php @@ -18,10 +18,9 @@ use Grav\Common\Flex\Traits\FlexIndexTrait; * Class FlexIndex * * @package Grav\Common\Flex - * @template TKey * @template T of \Grav\Framework\Flex\Interfaces\FlexObjectInterface * @template C of \Grav\Framework\Flex\Interfaces\FlexCollectionInterface - * @extends \Grav\Framework\Flex\FlexIndex + * @extends \Grav\Framework\Flex\FlexIndex */ abstract class FlexIndex extends \Grav\Framework\Flex\FlexIndex { diff --git a/system/src/Grav/Common/Flex/Types/Generic/GenericCollection.php b/system/src/Grav/Common/Flex/Types/Generic/GenericCollection.php index 2a6767bfe..6b2fbc1e6 100644 --- a/system/src/Grav/Common/Flex/Types/Generic/GenericCollection.php +++ b/system/src/Grav/Common/Flex/Types/Generic/GenericCollection.php @@ -17,7 +17,7 @@ use Grav\Common\Flex\FlexCollection; * Class GenericCollection * @package Grav\Common\Flex\Generic * - * @extends FlexCollection + * @extends FlexCollection */ class GenericCollection extends FlexCollection { diff --git a/system/src/Grav/Common/Flex/Types/Generic/GenericIndex.php b/system/src/Grav/Common/Flex/Types/Generic/GenericIndex.php index 4b0c400dd..81dbf9544 100644 --- a/system/src/Grav/Common/Flex/Types/Generic/GenericIndex.php +++ b/system/src/Grav/Common/Flex/Types/Generic/GenericIndex.php @@ -17,7 +17,7 @@ use Grav\Common\Flex\FlexIndex; * Class GenericIndex * @package Grav\Common\Flex\Generic * - * @extends FlexIndex + * @extends FlexIndex */ class GenericIndex extends FlexIndex { diff --git a/system/src/Grav/Common/Flex/Types/Pages/PageCollection.php b/system/src/Grav/Common/Flex/Types/Pages/PageCollection.php index 1811a0e63..c75c4ce27 100644 --- a/system/src/Grav/Common/Flex/Types/Pages/PageCollection.php +++ b/system/src/Grav/Common/Flex/Types/Pages/PageCollection.php @@ -35,7 +35,7 @@ use function is_string; * Class GravPageCollection * @package Grav\Plugin\FlexObjects\Types\GravPages * - * @extends FlexPageCollection + * @extends FlexPageCollection * * Incompatibilities with Grav\Common\Page\Collection: * $page = $collection->key() will not work at all diff --git a/system/src/Grav/Common/Flex/Types/Pages/PageIndex.php b/system/src/Grav/Common/Flex/Types/Pages/PageIndex.php index d53d7f888..b43b88602 100644 --- a/system/src/Grav/Common/Flex/Types/Pages/PageIndex.php +++ b/system/src/Grav/Common/Flex/Types/Pages/PageIndex.php @@ -38,7 +38,7 @@ use function is_string; * Class GravPageObject * @package Grav\Plugin\FlexObjects\Types\GravPages * - * @extends FlexPageIndex + * @extends FlexPageIndex * * @method PageIndex withModules(bool $bool = true) * @method PageIndex withPages(bool $bool = true) diff --git a/system/src/Grav/Common/Flex/Types/UserGroups/UserGroupCollection.php b/system/src/Grav/Common/Flex/Types/UserGroups/UserGroupCollection.php index b1443a8c6..93abbf886 100644 --- a/system/src/Grav/Common/Flex/Types/UserGroups/UserGroupCollection.php +++ b/system/src/Grav/Common/Flex/Types/UserGroups/UserGroupCollection.php @@ -17,7 +17,7 @@ use Grav\Common\Flex\FlexCollection; * Class UserGroupCollection * @package Grav\Common\Flex\Types\UserGroups * - * @extends FlexCollection + * @extends FlexCollection */ class UserGroupCollection extends FlexCollection { diff --git a/system/src/Grav/Common/Flex/Types/UserGroups/UserGroupIndex.php b/system/src/Grav/Common/Flex/Types/UserGroups/UserGroupIndex.php index effd27f61..4bee5ac3d 100644 --- a/system/src/Grav/Common/Flex/Types/UserGroups/UserGroupIndex.php +++ b/system/src/Grav/Common/Flex/Types/UserGroups/UserGroupIndex.php @@ -17,7 +17,7 @@ use Grav\Common\Flex\FlexIndex; * Class GroupIndex * @package Grav\Common\User\FlexUser * - * @extends FlexIndex + * @extends FlexIndex */ class UserGroupIndex extends FlexIndex { diff --git a/system/src/Grav/Common/Flex/Types/Users/UserCollection.php b/system/src/Grav/Common/Flex/Types/Users/UserCollection.php index e4e252cd4..e17525a9c 100644 --- a/system/src/Grav/Common/Flex/Types/Users/UserCollection.php +++ b/system/src/Grav/Common/Flex/Types/Users/UserCollection.php @@ -20,7 +20,7 @@ use function is_string; * Class UserCollection * @package Grav\Common\Flex\Types\Users * - * @extends FlexCollection + * @extends FlexCollection */ class UserCollection extends FlexCollection implements UserCollectionInterface { diff --git a/system/src/Grav/Common/Flex/Types/Users/UserIndex.php b/system/src/Grav/Common/Flex/Types/Users/UserIndex.php index 68bbb780e..4a3f58773 100644 --- a/system/src/Grav/Common/Flex/Types/Users/UserIndex.php +++ b/system/src/Grav/Common/Flex/Types/Users/UserIndex.php @@ -21,13 +21,12 @@ use Grav\Framework\Flex\Interfaces\FlexStorageInterface; use Monolog\Logger; use function count; use function is_string; -use function method_exists; /** * Class UserIndex * @package Grav\Common\Flex\Types\Users * - * @extends FlexIndex + * @extends FlexIndex */ class UserIndex extends FlexIndex implements UserCollectionInterface { diff --git a/system/src/Grav/Framework/Flex/FlexCollection.php b/system/src/Grav/Framework/Flex/FlexCollection.php index ee56ba410..54e06654a 100644 --- a/system/src/Grav/Framework/Flex/FlexCollection.php +++ b/system/src/Grav/Framework/Flex/FlexCollection.php @@ -37,10 +37,9 @@ use function is_scalar; /** * Class FlexCollection * @package Grav\Framework\Flex - * @template TKey * @template T of FlexObjectInterface - * @extends ObjectCollection - * @implements FlexCollectionInterface + * @extends ObjectCollection + * @implements FlexCollectionInterface */ class FlexCollection extends ObjectCollection implements FlexCollectionInterface { @@ -460,7 +459,6 @@ class FlexCollection extends ObjectCollection implements FlexCollectionInterface /** * @param string $key * @return array - * @phpstan-param TKey $key */ public function getMetaData(string $key): array { @@ -491,7 +489,7 @@ class FlexCollection extends ObjectCollection implements FlexCollectionInterface * @param string|null $scope * @param UserInterface|null $user * @return static - * @phpstan-return static + * @phpstan-return static */ public function isAuthorized(string $action, string $scope = null, UserInterface $user = null) { @@ -559,7 +557,7 @@ class FlexCollection extends ObjectCollection implements FlexCollectionInterface * @param array $elements Elements. * @param string|null $keyField * @return static - * @phpstan-return static + * @phpstan-return static * @throws \InvalidArgumentException */ protected function createFrom(array $elements, $keyField = null) diff --git a/system/src/Grav/Framework/Flex/FlexDirectory.php b/system/src/Grav/Framework/Flex/FlexDirectory.php index 093074806..b9c9d543b 100644 --- a/system/src/Grav/Framework/Flex/FlexDirectory.php +++ b/system/src/Grav/Framework/Flex/FlexDirectory.php @@ -46,7 +46,6 @@ use function is_callable; * Class FlexDirectory * @package Grav\Framework\Flex * @template T - * @template TKey */ class FlexDirectory implements FlexDirectoryInterface, FlexAuthorizeInterface { @@ -309,7 +308,7 @@ class FlexDirectory implements FlexDirectoryInterface, FlexAuthorizeInterface * @param array|null $keys Array of keys. * @param string|null $keyField Field to be used as the key. * @return FlexCollectionInterface - * @phpstan-return FlexCollectionInterface + * @phpstan-return FlexCollectionInterface */ public function getCollection(array $keys = null, string $keyField = null): FlexCollectionInterface { diff --git a/system/src/Grav/Framework/Flex/FlexIndex.php b/system/src/Grav/Framework/Flex/FlexIndex.php index d480bc9d5..08785c28e 100644 --- a/system/src/Grav/Framework/Flex/FlexIndex.php +++ b/system/src/Grav/Framework/Flex/FlexIndex.php @@ -33,11 +33,10 @@ use function in_array; /** * Class FlexIndex * @package Grav\Framework\Flex - * @template TKey * @template T of FlexObjectInterface * @template C of FlexCollectionInterface - * @extends ObjectIndex - * @implements FlexIndexInterface + * @extends ObjectIndex + * @implements FlexIndexInterface * @mixin C */ class FlexIndex extends ObjectIndex implements FlexCollectionInterface, FlexIndexInterface @@ -54,7 +53,7 @@ class FlexIndex extends ObjectIndex implements FlexCollectionInterface, FlexInde /** * @param FlexDirectory $directory * @return static - * @phpstan-return static + * @phpstan-return static */ public static function createFromStorage(FlexDirectory $directory) { @@ -343,7 +342,6 @@ class FlexIndex extends ObjectIndex implements FlexCollectionInterface, FlexInde /** * @param string $key * @return array - * @phpstan-param TKey $key */ public function getMetaData($key): array { @@ -370,7 +368,7 @@ class FlexIndex extends ObjectIndex implements FlexCollectionInterface, FlexInde /** * @param array $orderings * @return static - * @phpstan-return static + * @phpstan-return static */ public function orderBy(array $orderings) { @@ -538,7 +536,7 @@ class FlexIndex extends ObjectIndex implements FlexCollectionInterface, FlexInde * @param array $entries * @param string|null $keyField * @return static - * @phpstan-return static + * @phpstan-return static */ protected function createFrom(array $entries, string $keyField = null) { diff --git a/system/src/Grav/Framework/Flex/Interfaces/FlexCollectionInterface.php b/system/src/Grav/Framework/Flex/Interfaces/FlexCollectionInterface.php index 6fd81feb7..16be3d5d6 100644 --- a/system/src/Grav/Framework/Flex/Interfaces/FlexCollectionInterface.php +++ b/system/src/Grav/Framework/Flex/Interfaces/FlexCollectionInterface.php @@ -22,9 +22,8 @@ use InvalidArgumentException; * * @used-by \Grav\Framework\Flex\FlexCollection * @since 1.6 - * @template TKey * @template T - * @extends ObjectCollectionInterface + * @extends ObjectCollectionInterface */ interface FlexCollectionInterface extends FlexCommonInterface, ObjectCollectionInterface, NestedObjectInterface { @@ -58,7 +57,7 @@ interface FlexCollectionInterface extends FlexCommonInterface, ObjectCollectionI * @param string|string[]|null $properties Properties to search for, defaults to configured properties. * @param array|null $options Search options, defaults to configured options. * @return FlexCollectionInterface Returns a Flex Collection with only matching objects. - * @phpstan-return static + * @phpstan-return static * @api */ public function search(string $search, $properties = null, array $options = null); @@ -69,7 +68,7 @@ interface FlexCollectionInterface extends FlexCommonInterface, ObjectCollectionI * @param array $orderings Pair of [property => 'ASC'|'DESC', ...]. * * @return FlexCollectionInterface Returns a sorted version from the collection. - * @phpstan-return static + * @phpstan-return static */ public function sort(array $orderings); @@ -78,7 +77,7 @@ interface FlexCollectionInterface extends FlexCommonInterface, ObjectCollectionI * * @param array $filters * @return FlexCollectionInterface - * @phpstan-return static + * @phpstan-return static */ public function filterBy(array $filters); @@ -114,7 +113,7 @@ interface FlexCollectionInterface extends FlexCommonInterface, ObjectCollectionI * * @param string|null $keyField Switch key field of the collection. * @return FlexCollectionInterface Returns a new Flex Collection with new key field. - * @phpstan-return static + * @phpstan-return static * @api */ public function withKeyField(string $keyField = null); @@ -123,7 +122,7 @@ interface FlexCollectionInterface extends FlexCommonInterface, ObjectCollectionI * Get Flex Index from the Flex Collection. * * @return FlexIndexInterface Returns a Flex Index from the current collection. - * @phpstan-return FlexIndexInterface + * @phpstan-return FlexIndexInterface */ public function getIndex(); @@ -131,7 +130,7 @@ interface FlexCollectionInterface extends FlexCommonInterface, ObjectCollectionI * Load all the objects into memory, * * @return FlexCollectionInterface - * @phpstan-return static + * @phpstan-return static */ public function getCollection(); @@ -140,7 +139,6 @@ interface FlexCollectionInterface extends FlexCommonInterface, ObjectCollectionI * * @param string $key Key. * @return array - * @phpstan-param TKey $key */ public function getMetaData(string $key): array; } diff --git a/system/src/Grav/Framework/Flex/Interfaces/FlexIndexInterface.php b/system/src/Grav/Framework/Flex/Interfaces/FlexIndexInterface.php index 91bf14893..d751e4b40 100644 --- a/system/src/Grav/Framework/Flex/Interfaces/FlexIndexInterface.php +++ b/system/src/Grav/Framework/Flex/Interfaces/FlexIndexInterface.php @@ -21,9 +21,8 @@ use Grav\Framework\Flex\FlexDirectory; * * @used-by \Grav\Framework\Flex\FlexIndex * @since 1.6 - * @template TKey * @template T - * @extends FlexCollectionInterface + * @extends FlexCollectionInterface */ interface FlexIndexInterface extends FlexCollectionInterface { diff --git a/system/src/Grav/Framework/Flex/Pages/FlexPageCollection.php b/system/src/Grav/Framework/Flex/Pages/FlexPageCollection.php index d5532084f..94825681c 100644 --- a/system/src/Grav/Framework/Flex/Pages/FlexPageCollection.php +++ b/system/src/Grav/Framework/Flex/Pages/FlexPageCollection.php @@ -20,9 +20,8 @@ use function is_int; /** * Class FlexPageCollection * @package Grav\Plugin\FlexObjects\Types\FlexPages - * @template TKey * @template T of \Grav\Framework\Flex\Interfaces\FlexObjectInterface - * @extends FlexCollection + * @extends FlexCollection */ class FlexPageCollection extends FlexCollection { @@ -53,7 +52,7 @@ class FlexPageCollection extends FlexCollection /** * @param bool $bool * @return static - * @phpstan-return static + * @phpstan-return static */ public function withPublished(bool $bool = true) { @@ -65,7 +64,7 @@ class FlexPageCollection extends FlexCollection /** * @param bool $bool * @return static - * @phpstan-return static + * @phpstan-return static */ public function withVisible(bool $bool = true) { @@ -77,7 +76,7 @@ class FlexPageCollection extends FlexCollection /** * @param bool $bool * @return static - * @phpstan-return static + * @phpstan-return static */ public function withRoutable(bool $bool = true) { diff --git a/system/src/Grav/Framework/Flex/Pages/FlexPageIndex.php b/system/src/Grav/Framework/Flex/Pages/FlexPageIndex.php index 47a5e066d..904d1f6da 100644 --- a/system/src/Grav/Framework/Flex/Pages/FlexPageIndex.php +++ b/system/src/Grav/Framework/Flex/Pages/FlexPageIndex.php @@ -22,10 +22,9 @@ use Grav\Framework\Flex\FlexIndex; * @method FlexPageIndex withPublished(bool $bool = true) * @method FlexPageIndex withVisible(bool $bool = true) * - * @template TKey * @template T of FlexPageObject * @template C of FlexPageCollection - * @extends FlexIndex + * @extends FlexIndex */ class FlexPageIndex extends FlexIndex { diff --git a/system/src/Grav/Framework/Flex/Traits/FlexMediaTrait.php b/system/src/Grav/Framework/Flex/Traits/FlexMediaTrait.php index c9ae58057..a6e1e102f 100644 --- a/system/src/Grav/Framework/Flex/Traits/FlexMediaTrait.php +++ b/system/src/Grav/Framework/Flex/Traits/FlexMediaTrait.php @@ -205,10 +205,10 @@ trait FlexMediaTrait $filename = $info['path'] ?? $info['name']; } - /** @var Medium|null $thumbFile */ + /** @var Medium|null $imageFile */ $imageFile = $media[$filename]; - /** @var Medium|null $thumbFile */ + /** @var Medium|null $originalFile */ $originalFile = $originalMedia ? $originalMedia[$filename] : null; $url = $imageFile ? $imageFile->url() : null;