squirrelphp/twig-php-syntax

View on GitHub
src/Test/BooleanTest.php

Summary

Maintainability
A
0 mins
Test Coverage
A
100%
<?php

namespace Squirrel\TwigPhpSyntax\Test;

use Twig\Compiler;
use Twig\Node\Expression\TestExpression;

/**
 * Checks that a variable is a boolean.
 *
 *  {{ var is boolean }}
 *  {{ var is bool }}
 */
class BooleanTest extends TestExpression
{
    public function compile(Compiler $compiler): void
    {
        $compiler
            ->raw('(true === \\is_bool(')
            ->subcompile($this->getNode('node'))
            ->raw('))')
        ;
    }
}