Skip to content

Commit ecd76ba

Browse files
committed
refac: replace AbstractNodeVisitor with NodeVisitorInterface
1 parent 8fd30da commit ecd76ba

File tree

3 files changed

+14
-23
lines changed

3 files changed

+14
-23
lines changed

Diff for: Twig/Visitor/DefaultApplyingNodeVisitor.php

+5-8
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
use Twig\Node\Expression\Ternary\ConditionalTernary;
2222
use Twig\Node\Node;
2323
use Twig\Node\Nodes;
24-
use Twig\NodeVisitor\AbstractNodeVisitor;
24+
use Twig\NodeVisitor\NodeVisitorInterface;
2525
use Twig\TwigFilter;
2626

2727
/**
@@ -32,19 +32,16 @@
3232
*
3333
* @author Johannes M. Schmitt <[email protected]>
3434
*/
35-
final class DefaultApplyingNodeVisitor extends AbstractNodeVisitor
35+
final class DefaultApplyingNodeVisitor implements NodeVisitorInterface
3636
{
37-
/**
38-
* @var bool
39-
*/
40-
private $enabled = true;
37+
private bool $enabled = true;
4138

4239
public function setEnabled(bool $bool): void
4340
{
4441
$this->enabled = $bool;
4542
}
4643

47-
public function doEnterNode(Node $node, Environment $env): Node
44+
public function enterNode(Node $node, Environment $env): Node
4845
{
4946
if (!$this->enabled) {
5047
return $node;
@@ -141,7 +138,7 @@ public function doEnterNode(Node $node, Environment $env): Node
141138
return $node;
142139
}
143140

144-
public function doLeaveNode(Node $node, Environment $env): Node
141+
public function leaveNode(Node $node, Environment $env): Node
145142
{
146143
return $node;
147144
}

Diff for: Twig/Visitor/NormalizingNodeVisitor.php

+4-7
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
use Twig\Node\Expression\Binary\ConcatBinary;
1616
use Twig\Node\Expression\ConstantExpression;
1717
use Twig\Node\Node;
18-
use Twig\NodeVisitor\AbstractNodeVisitor;
18+
use Twig\NodeVisitor\NodeVisitorInterface;
1919

2020
/**
2121
* Performs equivalence transformations on the AST to ensure that
@@ -25,17 +25,14 @@
2525
*
2626
* @author Johannes M. Schmitt <[email protected]>
2727
*/
28-
final class NormalizingNodeVisitor extends AbstractNodeVisitor
28+
final class NormalizingNodeVisitor implements NodeVisitorInterface
2929
{
30-
protected function doEnterNode(Node $node, Environment $env): Node
30+
public function enterNode(Node $node, Environment $env): Node
3131
{
3232
return $node;
3333
}
3434

35-
/**
36-
* @return ConstantExpression|Node
37-
*/
38-
protected function doLeaveNode(Node $node, Environment $env): Node
35+
public function leaveNode(Node $node, Environment $env): ConstantExpression|Node
3936
{
4037
if ($node instanceof ConcatBinary
4138
&& ($left = $node->getNode('left')) instanceof ConstantExpression

Diff for: Twig/Visitor/RemovingNodeVisitor.php

+5-8
Original file line numberDiff line numberDiff line change
@@ -14,26 +14,23 @@
1414
use Twig\Environment;
1515
use Twig\Node\Expression\FilterExpression;
1616
use Twig\Node\Node;
17-
use Twig\NodeVisitor\AbstractNodeVisitor;
17+
use Twig\NodeVisitor\NodeVisitorInterface;
1818

1919
/**
2020
* Removes translation metadata filters from the AST.
2121
*
2222
* @author Johannes M. Schmitt <[email protected]>
2323
*/
24-
final class RemovingNodeVisitor extends AbstractNodeVisitor
24+
final class RemovingNodeVisitor implements NodeVisitorInterface
2525
{
26-
/**
27-
* @var bool
28-
*/
29-
private $enabled = true;
26+
private bool $enabled = true;
3027

3128
public function setEnabled(bool $bool): void
3229
{
3330
$this->enabled = $bool;
3431
}
3532

36-
protected function doEnterNode(Node $node, Environment $env): Node
33+
public function enterNode(Node $node, Environment $env): Node
3734
{
3835
if ($this->enabled && $node instanceof FilterExpression) {
3936
$name = $node->getNode('filter')->getAttribute('value');
@@ -46,7 +43,7 @@ protected function doEnterNode(Node $node, Environment $env): Node
4643
return $node;
4744
}
4845

49-
protected function doLeaveNode(Node $node, Environment $env): Node
46+
public function leaveNode(Node $node, Environment $env): Node
5047
{
5148
return $node;
5249
}

0 commit comments

Comments
 (0)