History log of /PHP-Parser/lib/PhpParser/Parser/Php7.php (Results 51 – 75 of 174)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 08501991 12-Sep-2021 Nikita Popov

Don't make VariadicPlaceholder an expression

And don't store it in an Arg.


# 13549aa7 03-Sep-2021 Nikita Popov

Add support for first-class callables

I'm somewhat unsure about the AST structure here.
VariadicPlaceholder is not a general expression. Maybe Arg->expr
should be Expr|VariadicPlaceh

Add support for first-class callables

I'm somewhat unsure about the AST structure here.
VariadicPlaceholder is not a general expression. Maybe Arg->expr
should be Expr|VariadicPlaceholder? Or possibly the call arguments
should be an array of Arg|VariadicPlaceholder?

show more ...


# ace6c67a 02-Sep-2021 Nikita Popov

Add support for intersection types


# 9aebf377 08-Aug-2021 Nikita Popov

Allow multiple modifiers for property promotion

Fixes issue #800.


# 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 ...


# c758510a 09-Jul-2021 Nikita Popov

Add support for PHP 8.1

With the introduction of intersection types, PHP now lexes the
token '&' either as T_AMPERSAND_(NOT_)FOLLOWED_BY_VAR_OR_VARARG.
This completely breaks parsing

Add support for PHP 8.1

With the introduction of intersection types, PHP now lexes the
token '&' either as T_AMPERSAND_(NOT_)FOLLOWED_BY_VAR_OR_VARARG.
This completely breaks parsing of any code containing '&'.

Fix this by canonicalizing to the new token format (unconditionally,
independent of emulation) and adjusting the parser to use the two
new tokens.

This doesn't add actual support for intersection types yet.

show more ...


# e03d63cf 25-Apr-2021 Nikita Popov

Fix precedence of arrow functions

Arrow functions should have lowest precedence.

Fixes #769.


# 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>


# a8223f22 20-Mar-2021 Nikita Popov

Add emulation for enum keyword


# 7284a4d0 20-Dec-2020 Nikita Popov

Remove no longer necessary class parsing workaround

This was split to work around the attribute assignment bug fixed
in the previous commit, and as such is no longer necessary.


# 893a5bce 19-Dec-2020 Nikita Popov

Fix #741 incorrect varvar positions


# 8a97fa15 19-Sep-2020 Nikita Popov

Recover from missing semicolon after property or class const

Fixes #712.


# 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 ...


# f66a32e2 06-Sep-2020 Nikita Popov

Emulate PHP 8 attribute syntax

Perform emulation by replacing #[ with %[, then patching % back
to # and coalescing #[ into T_ATTRIBUTE if it is a freestanding
token.


# 78e08fc1 09-Aug-2020 Nikita Popov

Allow keywords in namespace declaration


# a9835058 09-Aug-2020 Nikita Popov

Add support for throw expression


# 7f398769 09-Aug-2020 Nikita Popov

Add support for static return type


# 98f7f39d 09-Aug-2020 Nikita Popov

Add named argument support

Not adding any explicit FPPP support, as I don't think add/remove
of names can be handled any better than full reformatting.


# 23d9c177 02-Aug-2020 Nikita Popov

Add support for nullsafe operator


# 31be7b4e 08-Aug-2020 Nikita Popov

Update php-yacc, remove unused tokens


# a63b495f 23-Jul-2020 Nikita Popov

Migrate grammar to use PHP 8 T_NAME_* tokens

This will break everything on PHP < 8.


# 2d199893 22-Jul-2020 Nikita Popov

[PHP 8.0] Support trailing comma in closure use list

RFC: https://wiki.php.net/rfc/trailing_comma_in_closure_use_list


# 69c5d48a 15-Jul-2020 Tomas Votruba

[PHP 8.0] Add match expressions (#672)

RFC: https://wiki.php.net/rfc/match_expression_v2
Upstream implementation: php/php-src#5371

Closes #671.


# b58b19ed 07-Jun-2020 TomasVotruba

Add constructor promotion support


# 244db65d 12-Jun-2020 TomasVotruba

[PHP 8.0] Add trailing comma in parameter list


1234567