protected function createCallbacks(array $packageList)
{
$callbacks = array();
foreach ($packageList as $packageName) {
// Has wild card (*)
if (false !== strpos($packageName, '*')) {
$pattern = str_replace('*', '[a-zA-Z0-9-_]+', str_replace('/', '\\/', $packageName));
$callbacks[] = function ($packagePrettyName) use($pattern) {
return 1 === preg_match('/' . $pattern . '/', $packagePrettyName);
};
// Raw package name
} else {
$callbacks[] = function ($packagePrettyName) use($packageName) {
return $packageName === $packagePrettyName;
};
}
}
return $callbacks;
}