PHPSA\Compiler\Expression\Ternary::compile PHP Method

compile() protected method

({expr}) ? {expr} : {expr}
protected compile ( PhpParser\Node\Expr\Ternary $expr, Context $context ) : CompiledExpression
$expr PhpParser\Node\Expr\Ternary
$context PHPSA\Context
return PHPSA\CompiledExpression
    protected function compile($expr, Context $context)
    {
        $condition = $context->getExpressionCompiler()->compile($expr->cond);
        $left = $context->getExpressionCompiler()->compile($expr->if);
        $right = $context->getExpressionCompiler()->compile($expr->else);
        if ($condition->getValue() == true) {
            return CompiledExpression::fromZvalValue($left->getValue());
        } else {
            return CompiledExpression::fromZvalValue($right->getValue());
        }
    }
Ternary