1 | <?php |
||
22 | class Manipulator |
||
23 | { |
||
24 | /** |
||
25 | * @var VarTranslator |
||
26 | */ |
||
27 | protected $varTranslator; |
||
28 | |||
29 | /** |
||
30 | * @var PriorityQueue |
||
31 | */ |
||
32 | protected $plugins; |
||
33 | |||
34 | /** |
||
35 | * @param VarTranslator $varTranslator |
||
36 | */ |
||
37 | public function __construct(VarTranslator $varTranslator) |
||
42 | |||
43 | /** |
||
44 | * @param PluginInterface $plugin |
||
45 | * @param int $priority |
||
46 | * @return self |
||
47 | */ |
||
48 | public function setPlugin(PluginInterface $plugin, $priority = 1) |
||
53 | |||
54 | /** |
||
55 | * @param array $options |
||
56 | * @return self |
||
57 | */ |
||
58 | public function manipulate(array $options) |
||
101 | |||
102 | /** |
||
103 | * @param array $options |
||
104 | * @return PluginArgument |
||
105 | */ |
||
106 | protected function createPluginArgument(array $options) |
||
110 | |||
111 | /** |
||
112 | * @param string $className |
||
113 | * @param callable $callback |
||
114 | * @return self |
||
115 | */ |
||
116 | protected function eachPlugin($className, callable $callback) |
||
125 | } |
||
126 |
If you access a property on an interface, you most likely code against a concrete implementation of the interface.
Available Fixes
Adding an additional type check:
Changing the type hint: