kapersoft/awesome-rector-rules

A collection of some awesome Rector rules

1.0.0 2025-06-03 19:02 UTC

This package is auto-updated.

Last update: 2025-06-11 02:04:59 UTC


README

A set of awesome Rector rules.

Installation

Install via Composer:

composer require kapersoft/awesome-rector-rules --dev

Then register the rules in your rector.php config:

use Kapersoft\AwesomeRectorRules\NullableTypeToUnionTypeRector;
use Kapersoft\AwesomeRectorRules\MoveNullToEndOfUnionTypeRector;

return static function (Rector\Config\RectorConfig $rectorConfig): void {
    $rectorConfig->rules([
        NullableTypeToUnionTypeRector::class,
        MoveNullToEndOfUnionTypeRector::class,
    ]);
};

Included Rector Rules

1. NullableTypeToUnionTypeRector

Description: Converts nullable types (e.g., ?int) to explicit union types with null (e.g., int|null).

Before:

function someFunction(?int $value): ?string
{
    return null;
}

After:

function someFunction(int|null $value): string|null
{
    return null;
}

2. MoveNullToEndOfUnionTypeRector

Description: Moves null to the end of union types for consistency (e.g., null|stringstring|null).

Before:

function someFunction(null|string $param): null|int
{
}

After:

function someFunction(string|null $param): int|null
{
}

Changelog

See CHANGELOG.md for a history of changes.

Contributing

See CONTRIBUTING.md for contribution guidelines.

Security

See SECURITY.md for the security policy and reporting guidelines.

License

This project is licensed under the MIT License.