1 | <?php |
||
11 | class Package extends PackagedResource implements \IteratorAggregate |
||
12 | { |
||
13 | /** |
||
14 | * @var ResourceUri |
||
15 | */ |
||
16 | private $container; |
||
17 | |||
18 | /** |
||
19 | * @var PackagedResourceIteratorResolver |
||
20 | */ |
||
21 | private $iteratorResolver; |
||
22 | |||
23 | /** |
||
24 | * @param ResourceUri $container |
||
25 | * @param ResourceReaderResolver $readerResolver |
||
26 | * @param ResourceWriterResolver $writerResolver |
||
27 | * @param PackagedResourceIteratorResolver $iteratorResolver |
||
28 | */ |
||
29 | public function __construct( |
||
40 | |||
41 | /** |
||
42 | * @return ResourceUri |
||
43 | */ |
||
44 | public function getContainer() |
||
48 | |||
49 | /** |
||
50 | * (PHP 5 >= 5.0.0)<br/> |
||
51 | * Retrieve an external iterator |
||
52 | * @link http://php.net/manual/en/iteratoraggregate.getiterator.php |
||
53 | * @return Traversable An instance of an object implementing <b>Iterator</b> or |
||
54 | * <b>Traversable</b> |
||
55 | */ |
||
56 | public function getIterator() |
||
60 | |||
61 | /** |
||
62 | * @param callable $filter |
||
63 | * @return FilteredPackagedResourceIterator |
||
64 | */ |
||
65 | public function filter(callable $filter) |
||
69 | } |
||
70 |
This check looks for parameters that are defined as one type in their type hint or doc comment but seem to be used as a narrower type, i.e an implementation of an interface or a subclass.
Consider changing the type of the parameter or doing an instanceof check before assuming your parameter is of the expected type.