#
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 ...
|
#
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 ...
|
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, v4.0.4, v4.0.3, v4.0.2, v4.0.1, v4.0.0, v3.1.5, v4.0.0beta1, v3.1.4, 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
|
Revision tags: v3.1.0, v3.0.6 |
|
#
a6846e3b |
| 28-Apr-2017 |
Nikita Popov |
Always use Identifier nodes The parser will now always generate Identifier nodes (for non-namespaced identifiers). This obsoletes the useIdentifierNodes parser option. Node
Always use Identifier nodes The parser will now always generate Identifier nodes (for non-namespaced identifiers). This obsoletes the useIdentifierNodes parser option. Node constructors still accepts strings and will implicitly create an Identifier wrapper. Identifier implement __toString(), so that outside of strict-mode many things continue to work without changes.
show more ...
|
Revision tags: v3.0.5, v3.0.4, v3.0.3 |
|
#
7b441d21 |
| 10-Dec-2016 |
Matthew Brown |
Fix issues reported by psalm
|
Revision tags: v3.0.2, v3.0.1, v3.0.0, v3.0.0beta2, v3.0.0beta1, v2.1.1, v3.0.0alpha1, v2.1.0, v2.0.1, v2.0.0, v2.0.0beta1, v1.4.1, v2.0.0alpha1, v1.4.0, v1.3.0, v1.2.2, v1.2.1, v1.2.0 |
|
#
a2d7e897 |
| 28-Feb-2015 |
Nikita Popov |
Use real properties for storing subnodes Instead of storing subnodes in a subNodes dictionary, they are now stored as simple properties. This requires declarating the properties, ass
Use real properties for storing subnodes Instead of storing subnodes in a subNodes dictionary, they are now stored as simple properties. This requires declarating the properties, assigning them in the constructor, overriding the getSubNodeNames() method and passing NULL to the first argument of the NodeAbstract constructor. [Deprecated: It's still possible to use the old mode of operation for custom nodes by passing an array of subnodes to the constructor.] The only behavior difference this should cause is that getSubNodeNames() will always return the original subnode names and skip any additional properties that were dynamically added. E.g. this means that the "namespacedName" node added by the NameResolver visitor is not treated as a subnode, but as a dynamic property instead. This change improves performance and memory usage.
show more ...
|
Revision tags: v1.1.0, v1.0.2 |
|
#
6fad8ff3 |
| 03-Nov-2014 |
Arne Blankerts |
Make NameResolver resolve trait alias and precedence names
|
Revision tags: v1.0.1, v1.0.0, v1.0.0beta2, v0.9.5, v1.0.0beta1 |
|
#
f82862ec |
| 06-Feb-2014 |
nikic |
Port library to use namespaces, with BC for old names
|