%PDF- %PDF-
Direktori : /www/varak.net/losik.varak.net/vendor/nette/forms/src/Bridges/FormsLatte/Nodes/ |
Current File : /www/varak.net/losik.varak.net/vendor/nette/forms/src/Bridges/FormsLatte/Nodes/FormPrintNode.php |
<?php /** * This file is part of the Latte (https://latte.nette.org) * Copyright (c) 2008 David Grudl (https://davidgrudl.com) */ declare(strict_types=1); namespace Nette\Bridges\FormsLatte\Nodes; use Latte\Compiler\Nodes\Php\ExpressionNode; use Latte\Compiler\Nodes\StatementNode; use Latte\Compiler\PrintContext; use Latte\Compiler\Tag; /** * {formPrint [ClassName]} * {formClassPrint [ClassName]} */ class FormPrintNode extends StatementNode { public ?ExpressionNode $name; public string $mode; public static function create(Tag $tag): static { $node = new static; $node->name = $tag->parser->isEnd() ? null : $tag->parser->parseUnquotedStringOrExpression(); $node->mode = $tag->name; return $node; } public function print(PrintContext $context): string { return $context->format( 'Nette\Bridges\FormsLatte\Runtime::render%raw(' . ($this->name ? 'is_object($ʟ_tmp = %node) ? $ʟ_tmp : $this->global->uiControl[$ʟ_tmp]' : 'end($this->global->formsStack)') . ') %2.line; exit;', $this->mode, $this->name, $this->position, ); } public function &getIterator(): \Generator { if ($this->name) { yield $this->name; } } }