private function getClasses($function = false)
{
$classes = array();
foreach (new DirectoryIterator('inc/') as $fileInfo) {
if ($fileInfo->isDot()) {
continue;
}
$php_file = file_get_contents("inc/" . $fileInfo->getFilename());
$tokens = token_get_all($php_file);
$class_token = false;
foreach ($tokens as $token) {
if (is_array($token)) {
if ($token[0] == T_CLASS) {
$class_token = true;
} else {
if ($class_token && $token[0] == T_STRING) {
if ($function) {
if (method_exists($token[1], $function)) {
$classes[] = $token[1];
}
} else {
$classes[] = $token[1];
}
$class_token = false;
}
}
}
}
}
return array_unique($classes);
}