Neos\Flow\Aop\Pointcut\PointcutExpressionParser::getRuntimeEvaluationConditionsFromEvaluateString PHP Method

getRuntimeEvaluationConditionsFromEvaluateString() protected method

Parses the evaluate string for runtime evaluations and returns the corresponding conditions array
protected getRuntimeEvaluationConditionsFromEvaluateString ( string $evaluateString ) : array
$evaluateString string The evaluate string defined in the pointcut expression
return array The corresponding constraints array
    protected function getRuntimeEvaluationConditionsFromEvaluateString($evaluateString)
    {
        $matches = [];
        $runtimeEvaluationConditions = [];
        preg_match_all(self::PATTERN_MATCHRUNTIMEEVALUATIONSDEFINITION, $evaluateString, $matches);
        $matchesCount = count($matches[0]);
        for ($i = 0; $i < $matchesCount; $i++) {
            if ($matches[2][$i] === 'in' || $matches[2][$i] === 'matches') {
                $list = [];
                $listEntries = [];
                if (preg_match('/^\\s*\\(.*\\)\\s*$/', $matches[3][$i], $list) > 0) {
                    preg_match_all(self::PATTERN_MATCHRUNTIMEEVALUATIONSVALUELIST, $list[0], $listEntries);
                    $matches[3][$i] = $listEntries[1];
                }
            }
            $runtimeEvaluationConditions[] = ['operator' => $matches[2][$i], 'leftValue' => $matches[1][$i], 'rightValue' => $matches[3][$i]];
        }
        return $runtimeEvaluationConditions;
    }