complete Evaluators list + autoload

This commit is contained in:
odain
2025-09-03 16:48:40 +02:00
parent 794a9afe3e
commit c14ac90a13
42 changed files with 522 additions and 80 deletions

View File

@@ -0,0 +1,24 @@
<?php
namespace Combodo\iTop\PhpParser\Evaluation;
use PhpParser\Node\Expr;
use PhpParser\Node\Expr\Ternary;
class TernaryEvaluator extends AbstractExprEvaluator {
public function GetHandledExpressionType(): ?string {
return Ternary::class;
}
public function Evaluate(Expr $oExpr): mixed {
/** @var Ternary $oExpr */
$cond = PhpExpressionEvaluator::GetInstance()->EvaluateExpression($oExpr->cond);
if ($cond){
return PhpExpressionEvaluator::GetInstance()->EvaluateExpression($oExpr->if);
}
return PhpExpressionEvaluator::GetInstance()->EvaluateExpression($oExpr->else);
}
}