GetFunctionsToAsTwigFunctionAttributeRector

Changes getFunctions() in TwigExtension to #[AsTwigFunction] marker attribute above local class method

 use Twig\Extension\AbstractExtension;
+use Twig\Attribute\AsTwigFunction;

 class SomeClass extends AbstractExtension
 {
-    public function getFunctions()
-    {
-        return [
-            new \Twig\TwigFunction('function_name', [$this, 'localMethod']),
-        ];
-    }
-
+    #[AsTwigFunction('function_name')]
     public function localMethod($value)
     {
         return $value;
     }
 }

Configure your rector.php:

<?php

use Rector\Config\RectorConfig;
use Rector\Symfony\Symfony73\Rector\Class_\GetFunctionsToAsTwigFunctionAttributeRector;

return RectorConfig::configure()
    ->withRules([
        GetFunctionsToAsTwigFunctionAttributeRector::class,
    ]);