protected function updateSubclassInterfacesTraits($class)
{
foreach ($class->subclasses as $subclass) {
$subclass = $this->classes[$subclass];
$subclass->interfaces = array_unique(array_merge($subclass->interfaces, $class->interfaces));
$subclass->traits = array_unique(array_merge($subclass->traits, $class->traits));
$this->updateSubclassInterfacesTraits($subclass);
}
}