psalm/attributes

A collection of PHP 8 Attributes that Psalm can understand

0.1.0 2020-10-31 02:02 UTC

This package is auto-updated.

Last update: 2024-03-29 04:38:54 UTC


README

A repository for PHP 8 Attributes that you can use with Psalm.

Installation

The potential for PHP 8's runtime attribute reflection somewhere in your codebase makes this complicated.

If the following code exists your codebase:

function getClassAttributes(string $className) {
    foreach ((new ReflectionClass($className))->getAttributes() as $attr) {
        $attr->newInstance();
    }
}

And there’s a possibility it might load classes with these particular attributes then install with

composer require psalm/attributes:*

If you’re not planning to use any runtime attribute reflection (and nobody might use it on your library/package classes) then it should be safe to install with

composer require --dev psalm/attributes