1 | <?php |
||
31 | final class Property extends AbstractFactory implements ProjectFactoryStrategy |
||
32 | { |
||
33 | /** |
||
34 | * @var PrettyPrinter |
||
35 | */ |
||
36 | private $valueConverter; |
||
37 | |||
38 | /** |
||
39 | * Initializes the object. |
||
40 | */ |
||
41 | 6 | public function __construct(PrettyPrinter $prettyPrinter) |
|
45 | |||
46 | 1 | public function matches($object): bool |
|
50 | |||
51 | /** |
||
52 | * Creates an PropertyDescriptor out of the given object. |
||
53 | * |
||
54 | * Since an object might contain other objects that need to be converted the $factory is passed so it can be |
||
55 | * used to create nested Elements. |
||
56 | * |
||
57 | * @param PropertyIterator $object object to convert to an PropertyDescriptor |
||
58 | * @param StrategyContainer $strategies used to convert nested objects. |
||
59 | * @return PropertyDescriptor |
||
60 | */ |
||
61 | 4 | protected function doCreate($object, StrategyContainer $strategies, ?Context $context = null) |
|
80 | |||
81 | /** |
||
82 | * Converts the visibility of the property to a valid Visibility object. |
||
83 | */ |
||
84 | 4 | private function buildVisibility(PropertyIterator $node): Visibility |
|
94 | } |
||
95 |
This check looks at variables that are passed out again to other methods.
If the outgoing method call has stricter type requirements than the method itself, an issue is raised.
An additional type check may prevent trouble.