LoggerMessagesExpressionTypeResolverExtension
API reference › PHPStan › type › LoggerMessagesExpressionTypeResolverExtension
Infers the documented tuple shape for Yii logger and log-target message buffers.
Yii exposes both buffers as native properties documented only as array. This expression resolver recognizes reads
of Logger::$messages and Target::$messages and constructs their precise PHPStan array types directly.
ExpressionTypeResolverExtension for PHPStan expression type resolver contract.
Logger for the logger message structure.
Target for filtered target message buffers.
Methods
Section titled “Methods”| Method | Description | Defined by |
|---|---|---|
__construct() | Initializes Yii-version-aware logger message type resolution. | LoggerMessagesExpressionTypeResolverExtension |
getType() | Resolves reads of Yii logger message-buffer properties to their precise array shapes. | LoggerMessagesExpressionTypeResolverExtension |
Method details
Section titled “Method details”__construct()
Section titled “__construct() ”public function __construct(PHPStan\Reflection\ReflectionProvider $reflectionProvider)Initializes Yii-version-aware logger message type resolution.
Parameters
| Parameter | Type | Description |
|---|---|---|
$reflectionProvider | PHPStan\ | Reflection provider used to detect Yii 22.0 PSR message support. |
getType()
Section titled “getType() ”public function getType(PhpParser\Node\Expr $expr, PHPStan\Analyser\Scope $scope): PHPStan\Type\Type|nullResolves reads of Yii logger message-buffer properties to their precise array shapes.
Parameters
| Parameter | Type | Description |
|---|---|---|
$expr | PhpParser\ | Expression being analyzed. |
$scope | PHPStan\ | Current PHPStan analysis scope. |
Returns
PHPStan\Type\Type|null: Inferred message-buffer type, or null for unrelated expressions.