#
55c42692 |
| 21-Jul-2021 |
Máté Kocsis |
Add support for new PHP 8.1 modifiers (#796) Implement support for readonly properties (https://wiki.php.net/rfc/readonly_properties_v2) and final class contstants (https://wiki.php.net/
Add support for new PHP 8.1 modifiers (#796) Implement support for readonly properties (https://wiki.php.net/rfc/readonly_properties_v2) and final class contstants (https://wiki.php.net/rfc/final_class_const).
show more ...
|
#
8eb194ea |
| 25-Apr-2021 |
Nikita Popov |
Add never type This should be recognized as Identifier instead of Name now.
|
#
f68e1a43 |
| 25-Apr-2021 |
Tomas Votruba |
[PHP 8.1] Add support for enums (#758) RFC: https://wiki.php.net/rfc/enumerations Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
|
#
f767b9fd |
| 25-Apr-2021 |
Iskander (Alex) Sharipov |
ParserAbstract: add missing '*' to the phpdoc Otherwise, it's somewhat incompatible with the phpdoc definition.
|
#
d3d1ee47 |
| 08-Dec-2020 |
Nikita Popov |
Fix #738 incorrect start line for traits Empty productions are supposed to be assigned the start attributes of the lookahead token. Currently, this happens by assigning above the cur
Fix #738 incorrect start line for traits Empty productions are supposed to be assigned the start attributes of the lookahead token. Currently, this happens by assigning above the current stack position when the token it read. This fails in a situation where we first reduce an empty production higher up in the stack, and then again reduce an empty production lower in the stack, without consuming the lookahead token in the meantime. Fix this by moving the assignment into the reduction phase. We also need to do this for error productions, which are effectively empty.
show more ...
|
#
0cee2088 |
| 09-Aug-2020 |
Nikita Popov |
Remove self/parent/static restriction for namespace names This no longer applies as of PHP 8.0.
|
#
32f89662 |
| 28-May-2020 |
Máté Kocsis |
Add support for the mixed type
|
#
46cbd939 |
| 09-Feb-2020 |
Nikita Popov |
Place Nop nodes more precisely If the Nop is created to collect comments, place it directly after the comment, instead of at the next non-whitespace character.
|
Revision tags: v4.3.0 |
|
#
664c1012 |
| 25-Oct-2019 |
Nikita Popov |
Add support for union types We definitely need to introduce a general "Type" abstraction in the next major version.
|
Revision tags: v4.2.5, v4.2.4, v4.2.3, v4.2.2 |
|
#
60d025a9 |
| 11-May-2019 |
Nikita Popov |
Fix attributes for zero-length nop nodes Previously zero-length nop nodes used the lookahead start attributes and current end attributes. This choice ends up being somewhat weird, be
Fix attributes for zero-length nop nodes Previously zero-length nop nodes used the lookahead start attributes and current end attributes. This choice ends up being somewhat weird, because the end attributes will be the at the last non-whitespace, non-comment token, which might be quite far back. More problematically, we may not have encountered any non-discarded token if we're at the start of the file, in which case we will have no end attributes to assign. Change things to use a canonical "zero-length" node representation, where the end position (token & file) will be exactly one before the start position. Fixes #589.
show more ...
|
Revision tags: v4.2.1, v4.2.0 |
|
#
0ef61b49 |
| 03-Jan-2019 |
Tomas Votruba |
add float/double/real KIND support to Cast\Double node
|
Revision tags: v4.1.1, v4.1.0 |
|
#
eebaa946 |
| 22-Sep-2018 |
Nikita Popov |
Flexible doc strings: Fix some issues, add more tests
|
#
0ed9065b |
| 21-Sep-2018 |
Nikita Popov |
Flexible doc: Validate and strip indentation If indentation is invalid, we strip on a best-effort basis. The error position information is not great, but I don't want to introdu
Flexible doc: Validate and strip indentation If indentation is invalid, we strip on a best-effort basis. The error position information is not great, but I don't want to introduce sub-token error positioning at this point in time.
show more ...
|
#
5f73c4de |
| 21-Sep-2018 |
Nikita Popov |
Flexible doc: Validate end label indentation Move doc string parsing logic from rebuildParsers.php and String_::parseDocString() into ParserAbstract. This stuff is going to get compl
Flexible doc: Validate end label indentation Move doc string parsing logic from rebuildParsers.php and String_::parseDocString() into ParserAbstract. This stuff is going to get complicated now. For now only implement the validation of the indentation on the end label.
show more ...
|
Revision tags: v4.0.4, v4.0.3, v4.0.2 |
|
#
61210015 |
| 30-Mar-2018 |
Nikita Popov |
Remove unused ParserAbstract::$errors property Leftover from before ErrorHandler was introduced.
|
Revision tags: v4.0.1, v4.0.0, v3.1.5, v4.0.0beta1, v3.1.4, v4.0.0alpha3, v3.1.3 |
|
#
a75164c7 |
| 12-Nov-2017 |
Nikita Popov |
Rename YYNLSTATES to numNonLeafStates
|
#
c59e75f8 |
| 11-Nov-2017 |
Nikita Popov |
Clear parser state directly after parsing I don't think this makes any difference in practical scenarios, but it makes memory usage analysis simpler.
|
#
4392a7b1 |
| 11-Nov-2017 |
Nikita Popov |
Fix PHP5 static call fixup Variable nodes directly store the variable name as a string, they don't use VarLikeIdentifier. So remove this wrapper if it exists.
|
Revision tags: v4.0.0alpha2 |
|
#
457fe049 |
| 04-Nov-2017 |
Nikita Popov |
Ensure nodes have full complement of location info
|
Revision tags: v3.1.2, v4.0.0alpha1, v3.1.1 |
|
#
a10780ca |
| 29-Aug-2017 |
Nikita Popov |
Handle Nop statement after brace-style namespace Fixes #412.
|
#
e2e99f26 |
| 18-Aug-2017 |
TomasVotruba |
Add strict_types to lib code
|
#
7b36ca3b |
| 15-Aug-2017 |
Nikita Popov |
Add isSpecialClassName() method to Identifier and Name
|
#
d97cc3d9 |
| 15-Aug-2017 |
Nikita Popov |
Add toLowerString() method to Name and Identifier Avoids patterns like strtolower((string) $name) when using strict types.
|
#
05e6725b |
| 13-Aug-2017 |
TomasVotruba |
[cs] use strict comparison where allowed
|
#
ec535ea1 |
| 13-Aug-2017 |
TomasVotruba |
[cs] use PHP 5.4 short array, since PHP 7.0 is min version
|