blob: e31e3f84b0715028f3e6e8e8af90866ae0e8127f [file] [log] [blame]
Matthias Andreas Benkard12a57352021-12-28 18:02:04 +01001<?php
2
3/*
4 * This file is part of Twig.
5 *
6 * (c) Fabien Potencier
7 * (c) Armin Ronacher
8 *
9 * For the full copyright and license information, please view the LICENSE
10 * file that was distributed with this source code.
11 */
12
13namespace Twig\Node\Expression\Unary;
14
15use Twig\Compiler;
16use Twig\Node\Expression\AbstractExpression;
17use Twig\Node\Node;
18
19abstract class AbstractUnary extends AbstractExpression
20{
21 public function __construct(Node $node, int $lineno)
22 {
23 parent::__construct(['node' => $node], [], $lineno);
24 }
25
26 public function compile(Compiler $compiler): void
27 {
28 $compiler->raw(' ');
29 $this->operator($compiler);
30 $compiler->subcompile($this->getNode('node'));
31 }
32
33 abstract public function operator(Compiler $compiler): Compiler;
34}