#
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 ...
|
#
f98341f6 |
| 17-Sep-2022 |
Nikita Popov |
Specify more types
|
#
a099803d |
| 11-Sep-2022 |
Nikita Popov |
Use array<string, mixed> type for $attributes Slightly more accurate, and stops PHPStan from complaining about the missing array type information.
|
#
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 ...
|
#
4c22c627 |
| 13-Sep-2020 |
Tomas Votruba |
[PHP 8.0] Add attributes support (#661) Adds support for PHP 8 attributes, represented using `AttrGroup` nodes containing `Attribute` nodes. The `attrGroup` subnode is added to all n
[PHP 8.0] Add attributes support (#661) Adds support for PHP 8 attributes, represented using `AttrGroup` nodes containing `Attribute` nodes. The `attrGroup` subnode is added to all nodes that can have attributes. This is still missing FPPP support. Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
show more ...
|
Revision tags: v4.3.0, v4.2.5, v4.2.4 |
|
#
005bb1db |
| 30-Aug-2019 |
Tomas Votruba |
add getProperties() and getConstants() to ClassLike
|
Revision tags: v4.2.3, v4.2.2 |
|
#
993f2990 |
| 12-May-2019 |
Nikita Popov |
Avoid parent constructor call during node construction Instead explicitly assign the attributes. This is a minor performance improvement.
|
Revision tags: 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 |
|
#
248b29ec |
| 10-Jan-2018 |
Gabriel Caruso |
Add public visibility to getType method (#463)
|
Revision tags: v4.0.0alpha3, v3.1.3 |
|
#
1c11626f |
| 12-Nov-2017 |
Nikita Popov |
Add explicit getType() methods Rather than automatically deriving getType() from the class name.
|
Revision tags: v4.0.0alpha2, v3.1.2, v4.0.0alpha1, v3.1.1 |
|
#
e2e99f26 |
| 18-Aug-2017 |
TomasVotruba |
Add strict_types to lib code
|
#
ec535ea1 |
| 13-Aug-2017 |
TomasVotruba |
[cs] use PHP 5.4 short array, since PHP 7.0 is min version
|
Revision tags: v3.1.0, v3.0.6 |
|
#
a32e3797 |
| 28-Apr-2017 |
Nikita Popov |
Generate PHP 7 type annotations
|
#
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 ...
|
#
fba61390 |
| 24-Apr-2017 |
Nikita Popov |
Use null-coalesce operator
|
Revision tags: v3.0.5, v3.0.4, v3.0.3, v3.0.2, v3.0.1, v3.0.0 |
|
#
bcdfb703 |
| 23-Nov-2016 |
Nikita Popov |
Cleanup imports Thanks PhpStorm :)
|
Revision tags: v3.0.0beta2 |
|
#
caa5c0cc |
| 08-Oct-2016 |
Nikita Popov |
Graceful handling for "special" errors Nearly all special errors are now handled gracefully, i.e. the parser will be able to continue after encountering them. In some cases the assoc
Graceful handling for "special" errors Nearly all special errors are now handled gracefully, i.e. the parser will be able to continue after encountering them. In some cases the associated error range has been improved using the new end attribute stack. To achieve this the error handling code has been moved out of the node constructors and into special methods in the parser.
show more ...
|
Revision tags: 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 |
|
#
29b9015f |
| 02-May-2015 |
Nikita Popov |
Drop support for old Node format
|
Revision tags: v1.3.0 |
|
#
55b2ead9 |
| 26-Apr-2015 |
Nikita Popov |
Make special class name checks case insensitive
|
#
62f83a0d |
| 18-Apr-2015 |
Nikita Popov |
Add column info for non-syntax errors where relatively precise Should it also be added if only rough information is available? E.g. spanning an entire class?
|
Revision tags: 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 ...
|
#
1366e833 |
| 31-Jan-2015 |
Tom Rochette |
Move getMethods() to new ClassLike node Class_, Interface_ and Trait_ extend the ClassLike node, which provides the getMethods() method.
|
Revision tags: v1.1.0, v1.0.2, v1.0.1, v1.0.0, v1.0.0beta2, v0.9.5 |
|
#
c341ab2e |
| 02-Apr-2014 |
Nikita Popov |
Make autoloader for new names PSR-0 compliant
|