mirror of
https://github.com/twigphp/Twig.git
synced 2026-09-10 17:36:53 +00:00
minor #3935 Simplify generated code by using named arguments (fabpot)
This PR was squashed before being merged into the 4.x branch. Discussion ---------- Simplify generated code by using named arguments Commits -------bce22e4cUse named argumentsa64561b4Simplify code
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(')')
|
||||
;
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
|
||||
namespace Twig\Test;
|
||||
|
||||
use PHPUnit\Framework\Constraint\Exception;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use Twig\Environment;
|
||||
use Twig\Error\Error;
|
||||
@@ -235,8 +236,7 @@ abstract class IntegrationTestCase extends TestCase
|
||||
|
||||
if (false !== $exception) {
|
||||
[$class] = explode(':', $exception);
|
||||
$constraintClass = class_exists('PHPUnit\Framework\Constraint\Exception') ? 'PHPUnit\Framework\Constraint\Exception' : 'PHPUnit_Framework_Constraint_Exception';
|
||||
$this->assertThat(null, new $constraintClass($class));
|
||||
$this->assertThat(null, new Exception($class));
|
||||
}
|
||||
|
||||
$expected = trim($match[3], "\n ");
|
||||
|
||||
@@ -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