PHPSA\Compiler\Expression\Operators\Bitwise\BitwiseNot::compile PHP Method

compile() protected method

~{expr}
protected compile ( PhpParser\Node\Expr\BitwiseNot $expr, Context $context ) : CompiledExpression
$expr PhpParser\Node\Expr\BitwiseNot
$context PHPSA\Context
return PHPSA\CompiledExpression
    protected function compile($expr, Context $context)
    {
        $compiledExpression = $context->getExpressionCompiler()->compile($expr->expr);
        switch ($compiledExpression->getType()) {
            case CompiledExpression::INTEGER:
            case CompiledExpression::DOUBLE:
            case CompiledExpression::STRING:
                return CompiledExpression::fromZvalValue(~$compiledExpression->getValue());
        }
        return new CompiledExpression();
    }
BitwiseNot