Add Type::spliceArray()
, improve splice_array()
array type narrowing
#3952
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.
Closes phpstan/phpstan#11917
This is very similar to
Type:: sliceArray()
and it is used inNodeScopeResolver
in a similar fashion asType::popArray()
is. Moving logic toType
deals obviously with all accessory types which were not working properly before too like e.g. list or non-empty-array. The only thing I'm slightly worried about is the constant array type handling which is not perfect.First commit is a tiny refactor I didn't want to cause more noise and dependencies with another PR..