Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
optometrists
/
cache
/
cache
/
cache
/
.wp-cli
/
wp-content
/
plugins
/
wp-phpmyadmin-extension
/
lib
/
phpMyAdmin
/
vendor
/
twig
/
twig
/
src
/
Node
/
Expression
:
ArrowFunctionExpression.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php /* * This file is part of Twig. * * (c) Fabien Potencier * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Twig\Node\Expression; use Twig\Compiler; use Twig\Node\Node; /** * Represents an arrow function. * * @author Fabien Potencier <fabien@symfony.com> */ class ArrowFunctionExpression extends AbstractExpression { public function __construct(AbstractExpression $expr, Node $names, $lineno, $tag = null) { parent::__construct(['expr' => $expr, 'names' => $names], [], $lineno, $tag); } public function compile(Compiler $compiler): void { $compiler ->addDebugInfo($this) ->raw('function (') ; foreach ($this->getNode('names') as $i => $name) { if ($i) { $compiler->raw(', '); } $compiler ->raw('$__') ->raw($name->getAttribute('name')) ->raw('__') ; } $compiler ->raw(') use ($context, $macros) { ') ; foreach ($this->getNode('names') as $name) { $compiler ->raw('$context["') ->raw($name->getAttribute('name')) ->raw('"] = $__') ->raw($name->getAttribute('name')) ->raw('__; ') ; } $compiler ->raw('return ') ->subcompile($this->getNode('expr')) ->raw('; }') ; } }