Conditions | 5 |
Paths | 5 |
Total Lines | 18 |
Code Lines | 11 |
Lines | 0 |
Ratio | 0 % |
Changes | 0 |
1 | <?php |
||
58 | public function leaveNode(NodeInterface $node): ?NodeInterface |
||
59 | { |
||
60 | $newNode = null; |
||
61 | |||
62 | foreach ($this->visitors as $i => $visitor) { |
||
63 | if (!isset($this->_skipping[$i])) { |
||
64 | try { |
||
65 | $newNode = $visitor->leaveNode($node); |
||
66 | } catch (VisitorBreak $break) { |
||
67 | $this->_skipping[$i] = $break; |
||
68 | continue; |
||
69 | } |
||
70 | } elseif ($this->_skipping[$i] === $node) { |
||
71 | unset($this->_skipping[$i]); |
||
72 | } |
||
73 | } |
||
74 | |||
75 | return $newNode; |
||
76 | } |
||
78 |