protected function getMatchingInterfaceIntroductions(array &$aspectContainers, $targetClassName)
{
$introductions = [];
foreach ($aspectContainers as $aspectContainer) {
if (!$aspectContainer->getCachedTargetClassNameCandidates()->hasClassName($targetClassName)) {
continue;
}
foreach ($aspectContainer->getInterfaceIntroductions() as $introduction) {
$pointcut = $introduction->getPointcut();
if ($pointcut->matches($targetClassName, null, null, uniqid())) {
$introductions[] = $introduction;
}
}
}
return $introductions;
}