move PhpParser/Evaluation classes in a specific namespave + composer dumpautoload

This commit is contained in:
odain
2025-09-02 19:19:56 +02:00
parent 1962cd7a88
commit ac2b787e09
33 changed files with 92 additions and 42 deletions

View File

@@ -0,0 +1,28 @@
<?php
namespace Combodo\iTop\PhpParser\Evaluation;;
use PhpParser\Node\Expr;
use PhpParser\Node\Expr\ArrayDimFetch;
class ArrayDimFetchEvaluator implements iExprEvaluator {
public function GetHandledExpressionType(): string {
return ArrayDimFetch::class;
}
public function Evaluate(Expr $oExpr): mixed {
/** @var ArrayDimFetch $oExpr */
$var = PhpExpressionEvaluator::GetInstance()->EvaluateExpression($oExpr->var);
if (is_null($var)){
return null;
}
$dim = PhpExpressionEvaluator::GetInstance()->EvaluateExpression($oExpr->dim);
if (is_null($var)){
return $dim;
}
return $var[$dim] ?? null;
}
}