| Conditions | 3 | 
| Paths | 3 | 
| Total Lines | 14 | 
| Code Lines | 7 | 
| Lines | 0 | 
| Ratio | 0 % | 
| Changes | 0 | ||
| 1 | <?php | ||
| 57 | public static function jsonDeserialize($json) | ||
| 58 |     { | ||
| 59 | $data = JSON::decode($json); | ||
| 60 | |||
| 61 |         if (empty($data['path'])) { | ||
| 62 |             throw new \LogicException('The message does not contain "path" but it is required.'); | ||
| 63 | } | ||
| 64 | |||
| 65 |         if (empty($data['uris'])) { | ||
| 66 |             throw new \LogicException('The message uris must not be empty array.'); | ||
| 67 | } | ||
| 68 | |||
| 69 | return new static($data['path'], $data['uris']); | ||
| 70 | } | ||
| 71 | } | ||
| 72 | 
Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.
Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..