History log of /PHP-Parser/lib/PhpParser/NodeTraverser.php (Results 1 – 25 of 41)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# acfccd9d 01-Nov-2023 Nikita Popov

Run with updated php-cs-fixer


# de84f767 26-Sep-2023 Nikita Popov

Avoid by-reference iteration in NodeTraverser

No need to create reference wrappers around every element in the
array.


# ab51e9d3 17-Sep-2023 Nikita Popov

Remove superfluous phpdoc tags

These just specify a type that is already specified as a real PHP
type.


# 502b0909 16-Aug-2023 Nikita Popov

Add property types

Types omitted in two places where we violate them currently:
Namespace_::$stmts can be null during parsing, and Enum_::$scalarType
can be a complex type for invali

Add property types

Types omitted in two places where we violate them currently:
Namespace_::$stmts can be null during parsing, and Enum_::$scalarType
can be a complex type for invalid programs.

show more ...


# c48ee36f 09-Jul-2023 Nikita Popov

Allow passing visitors to NodeTraverser constructor


# 16c766ea 28-May-2023 Nikita Popov

Don't take subnodes by reference when traversing

Explicitly assign the property where necessary to avoid the
creation of unnecessary reference-wrappers everywhere.


# 53f67173 28-May-2023 Nikita Popov

Remove unnecessary Node return value from traverseNode()

The node always stays the same: We may only change subnodes.


# afe1628a 21-May-2023 Nikita Popov

Add support for NodeVisitor::REPLACE_WITH_NULL

Fixes #716.


# 8490c0e8 21-May-2023 Nikita Popov

Call leaveNode() on visitors in reverse order

Node visitation is now properly nested. The call sequence will
now be

$visitor1->enterNode($n);
$visitor2->enterNode($n

Call leaveNode() on visitors in reverse order

Node visitation is now properly nested. The call sequence will
now be

$visitor1->enterNode($n);
$visitor2->enterNode($n);
$visitor2->leaveNode($n);
$visitor1->leaveNode($n);

rather than

$visitor1->enterNode($n);
$visitor2->enterNode($n);
$visitor1->leaveNode($n);
$visitor2->leaveNode($n);

Fixes #899.

show more ...


# 8bc69824 21-May-2023 Nikita Popov

Ensure removing visitor does not leave holes


# 93731c5c 20-May-2023 Nikita Popov

Move constants from NodeTraverser to NodeVisitor

These are really part of the NodeVisitor API. Retain aliases for
compatibility.


# 8ad41294 14-Dec-2022 Markus Staab

Declare list types (#907)

Closes #905


# 48f470ea 11-Sep-2022 Nikita Popov

Add missing return types


# b9fe3449 11-Sep-2022 Nikita Popov

Add missing parameter types


# e9800cf7 11-Sep-2022 Nikita Popov

Add tools/ directory

With php-cs-fixer and phpstan. Also reformat one file.


# 9b5a2c89 11-Sep-2022 Nikita Popov

Use PHPStan level 5


# a3b0541c 03-Sep-2022 Nikita Popov

Support array return from enterNode()

This uses the same semantics as arrays from leaveNode(), i.e. the
returned nodes will not be visited by other visitors. This is open
to change t

Support array return from enterNode()

This uses the same semantics as arrays from leaveNode(), i.e. the
returned nodes will not be visited by other visitors. This is open
to change though (but probably should change for both enterNode()
and leaveNode() if it does change?)

show more ...


# c42290ae 03-Sep-2022 Nikita Popov

Support REMOVE_NODE from enterNode()


# dd63ddbc 28-Aug-2022 Nikita Popov

Add php-cs-fixer config and reformat

The formatting in this project has become something of a mess,
because it changed over time. Add a CS fixer config and reformat
to the desired st

Add php-cs-fixer config and reformat

The formatting in this project has become something of a mess,
because it changed over time. Add a CS fixer config and reformat
to the desired style, which is PSR-12, but with sane brace placement.

show more ...


# 050342b5 04-Jul-2022 MathiasReker

Add visibility modifiers to constants

Closes GH-848.


Revision tags: v4.3.0, v4.2.5, v4.2.4, v4.2.3, v4.2.2, v4.2.1, v4.2.0, v4.1.1, v4.1.0
# dc323458 08-Oct-2018 Maks Rafalko

Add new constant to be returned from enterNode() to not traverse current and child nodes (#536)

* Add new constant to be returned from enterNode() to not travers current node for subsequent

Add new constant to be returned from enterNode() to not traverse current and child nodes (#536)

* Add new constant to be returned from enterNode() to not travers current node for subsequent visitors and skip children traversing

* Allow visitors to replace nodes in leaveNode() when DONT_TRAVERSE_CURRENT_AND_CHILDREN is used

show more ...


Revision tags: v4.0.4
# d7d581c1 27-Aug-2018 Tomáš Votruba

Remove NodeTraverser dependency on parent::__construct() (#528)

A parent::__construct() call is now optional when extending NodeTraverser.


Revision tags: v4.0.3, v4.0.2, v4.0.1
# 6aba7624 03-Mar-2018 Nikita Popov

Add replacement sanity check in traverser


Revision tags: v4.0.0, v3.1.5, v4.0.0beta1, v3.1.4
# 5285df8f 13-Jan-2018 Nikita Popov

[CS] Use elseif instead of else if

Conflicts:
lib/PhpParser/TokenStream.php


Revision tags: v4.0.0alpha3, v3.1.3, v4.0.0alpha2, v3.1.2, v4.0.0alpha1, v3.1.1
# e2e99f26 18-Aug-2017 TomasVotruba

Add strict_types to lib code


12