Fix no facade aliased classes with macroable #1709
Closed
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.
Summary
Aliases can be used with classes that are not
Illuminate\Support\Facades\Facade
and they can beMacroable
.This PR allows classes alias that do not extend Facade to be added to the list of macroables.
To explain myself better, an example:
'Arr' => \Illuminate\Support\Arr::class
Facades/Facade.php#L276@defaultAliases()Arr
alias for\Illuminate\Support\Arr::class
is not a Facade but usesMacroable
: Illuminate/Collections/Arr.php#L16-L18If you look at the code below, before adding the list of macroables it is filtered by
Facade
, which is why aliases likeArr
would not worklaravel-ide-helper/src/Generator.php
Lines 269 to 273 in 0fa96e5
Type of change
Checklist
composer fix-style