protected function getArgumentConstraintsFromMethodArgumentsPattern($methodArgumentsPattern)
{
$matches = [];
$argumentConstraints = [];
preg_match_all(self::PATTERN_MATCHRUNTIMEEVALUATIONSDEFINITION, $methodArgumentsPattern, $matches);
for ($i = 0; $i < count($matches[0]); $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];
}
}
$argumentConstraints[$matches[1][$i]]['operator'][] = $matches[2][$i];
$argumentConstraints[$matches[1][$i]]['value'][] = $matches[3][$i];
}
return $argumentConstraints;
}