mirror of
https://github.com/twigphp/Twig.git
synced 2026-09-08 16:36:58 +00:00
Use named arguments
This commit is contained in:
@@ -70,17 +70,27 @@ class GetAttrExpression extends AbstractExpression
|
||||
;
|
||||
|
||||
if ($this->hasNode('arguments')) {
|
||||
$compiler->raw(', ')->subcompile($this->getNode('arguments'));
|
||||
} else {
|
||||
$compiler->raw(', []');
|
||||
$compiler->raw(', arguments: ')->subcompile($this->getNode('arguments'));
|
||||
}
|
||||
|
||||
$compiler->raw(', ')
|
||||
->repr($this->getAttribute('type'))
|
||||
->raw(', ')->repr($this->getAttribute('is_defined_test'))
|
||||
->raw(', ')->repr($this->getAttribute('ignore_strict_check'))
|
||||
->raw(', ')->repr($env->hasExtension(SandboxExtension::class))
|
||||
->raw(', ')->repr($this->getNode('node')->getTemplateLine())
|
||||
if (Template::ANY_CALL !== $type = $this->getAttribute('type')) {
|
||||
$compiler->raw(', type: ')->repr($type);
|
||||
}
|
||||
|
||||
if ($this->getAttribute('is_defined_test')) {
|
||||
$compiler->raw(', isDefinedTest: true');
|
||||
}
|
||||
|
||||
if ($this->getAttribute('ignore_strict_check')) {
|
||||
$compiler->raw(', ignoreStrictCheck: true');
|
||||
}
|
||||
|
||||
if ($env->hasExtension(SandboxExtension::class)) {
|
||||
$compiler->raw(', sandboxed: true');
|
||||
}
|
||||
|
||||
$compiler
|
||||
->raw(', lineno: ')->repr($this->getNode('node')->getTemplateLine())
|
||||
->raw(')')
|
||||
;
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ class GetAttrTest extends NodeTestCase
|
||||
$attr = new ConstantExpression('bar', 1);
|
||||
$args = new ArrayExpression([], 1);
|
||||
$node = new GetAttrExpression($expr, $attr, $args, Template::ANY_CALL, 1);
|
||||
$tests[] = [$node, sprintf('%s%s, "bar", [], "any", false, false, false, 1)', $this->getAttributeGetter(), $this->getVariableGetter('foo', 1))];
|
||||
$tests[] = [$node, sprintf('%s%s, "bar", arguments: [], lineno: 1)', $this->getAttributeGetter(), $this->getVariableGetter('foo', 1))];
|
||||
|
||||
$node = new GetAttrExpression($expr, $attr, $args, Template::ARRAY_CALL, 1);
|
||||
$tests[] = [$node, '(($__internal_%s = // line 1'."\n".
|
||||
@@ -53,7 +53,7 @@ class GetAttrTest extends NodeTestCase
|
||||
$args->addElement(new NameExpression('foo', 1));
|
||||
$args->addElement(new ConstantExpression('bar', 1));
|
||||
$node = new GetAttrExpression($expr, $attr, $args, Template::METHOD_CALL, 1);
|
||||
$tests[] = [$node, sprintf('%s%s, "bar", [%s, "bar"], "method", false, false, false, 1)', $this->getAttributeGetter(), $this->getVariableGetter('foo', 1), $this->getVariableGetter('foo'))];
|
||||
$tests[] = [$node, sprintf('%s%s, "bar", arguments: [%s, "bar"], type: "method", lineno: 1)', $this->getAttributeGetter(), $this->getVariableGetter('foo', 1), $this->getVariableGetter('foo'))];
|
||||
|
||||
return $tests;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user