Move some methods to static calls

This commit is contained in:
Fabien Potencier
2024-08-17 23:15:53 +02:00
parent 003b171ea6
commit 8370e8a9a7
+6 -6
View File
@@ -246,9 +246,9 @@ final class CoreExtension extends AbstractExtension
public function getFunctions(): array
{
return [
new TwigFunction('parent', null, ['parser_callable' => [$this, 'parseParentFunction']]),
new TwigFunction('block', null, ['parser_callable' => [$this, 'parseBlockFunction']]),
new TwigFunction('attribute', null, ['parser_callable' => [$this, 'parseAttributeFunction']]),
new TwigFunction('parent', null, ['parser_callable' => [self::class, 'parseParentFunction']]),
new TwigFunction('block', null, ['parser_callable' => [self::class, 'parseBlockFunction']]),
new TwigFunction('attribute', null, ['parser_callable' => [self::class, 'parseAttributeFunction']]),
new TwigFunction('max', 'max'),
new TwigFunction('min', 'min'),
new TwigFunction('range', 'range'),
@@ -1920,7 +1920,7 @@ final class CoreExtension extends AbstractExtension
/**
* @internal
*/
public function parseParentFunction(Parser $parser, Node $fakeNode, $args, int $line): AbstractExpression
public static function parseParentFunction(Parser $parser, Node $fakeNode, $args, int $line): AbstractExpression
{
if (!\count($parser->getBlockStack())) {
throw new SyntaxError('Calling "parent" outside a block is forbidden.', $line, $parser->getStream()->getSourceContext());
@@ -1936,7 +1936,7 @@ final class CoreExtension extends AbstractExtension
/**
* @internal
*/
public function parseBlockFunction(Parser $parser, Node $fakeNode, $args, int $line): AbstractExpression
public static function parseBlockFunction(Parser $parser, Node $fakeNode, $args, int $line): AbstractExpression
{
$fakeFunction = new TwigFunction('block', fn ($name, $template = null) => null);
$args = (new CallableArgumentsExtractor($fakeNode, $fakeFunction))->extractArguments($args);
@@ -1947,7 +1947,7 @@ final class CoreExtension extends AbstractExtension
/**
* @internal
*/
public function parseAttributeFunction(Parser $parser, Node $fakeNode, $args, int $line): AbstractExpression
public static function parseAttributeFunction(Parser $parser, Node $fakeNode, $args, int $line): AbstractExpression
{
$fakeFunction = new TwigFunction('attribute', fn ($variable, $attribute, $arguments = null) => null);
$args = (new CallableArgumentsExtractor($fakeNode, $fakeFunction))->extractArguments($args);