PHP 8.0 : NewOperators account for nullsafe object operator #1210
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PHP 8.0: NewOperators: detect new nullsafe object operator
PHP 8 introduces a new object chaining operator
?->
which short-circuits moving to the next expression if the left-hand side evaluates tonull
.This operator can not be used in write-context, but that is not the concern of this sniff.
Refs:
Includes unit test.
NewOperators: improve grammar of the error message
PHP 8.0: NewConstants: add new
T_NULLSAFE_OBJECT_OPERATOR
constantRef: https://wiki.php.net/rfc/nullsafe_operator
...and exclude it from triggering when running PHPCompatibility over its own code.
Related to #809