Conditions | 8 |
Paths | 9 |
Total Lines | 19 |
Code Lines | 10 |
Lines | 0 |
Ratio | 0 % |
Changes | 0 |
1 | <?php |
||
45 | public function hasParent($parent = null, bool $recursive = false): bool |
||
46 | { |
||
47 | if ($parent === null) { |
||
48 | return $this->parent !== null; |
||
49 | } |
||
50 | |||
51 | $foundParent = false; |
||
52 | |||
53 | if ($parent instanceof Node) { |
||
54 | $foundParent = $this->parent === $parent; |
||
55 | } elseif (is_string($parent)) { |
||
56 | $foundParent = isset($this->parent) && get_class($this->parent) === $parent; |
||
57 | } |
||
58 | |||
59 | if ($recursive === true && isset($this->parent) && $foundParent === false) { |
||
60 | return $this->parent->hasParent($parent, true); |
||
1 ignored issue
–
show
|
|||
61 | } |
||
62 | |||
63 | return $foundParent; |
||
64 | } |
||
66 |
This check looks for calls to methods that do not seem to exist on a given type. It looks for the method on the type itself as well as in inherited classes or implemented interfaces.
This is most likely a typographical error or the method has been renamed.