classNameImportSkipVoters = $classNameImportSkipVoters; } public function shouldSkipNameForFullyQualifiedObjectType(Node $node, FullyQualifiedObjectType $fullyQualifiedObjectType) : bool { foreach ($this->classNameImportSkipVoters as $classNameImportSkipVoter) { if ($classNameImportSkipVoter->shouldSkip($fullyQualifiedObjectType, $node)) { return \true; } } return \false; } public function isShortNameInUseStatement(Name $name) : bool { $longName = $name->toString(); if (Strings::contains($longName, '\\')) { return \false; } return $this->isFoundInUse($name); } public function isFoundInUse(Name $name) : bool { /** @var Use_[] $uses */ $uses = (array) $name->getAttribute(AttributeKey::USE_NODES); foreach ($uses as $use) { foreach ($use->uses as $useUse) { if ($useUse->name->getLast() !== $name->getLast()) { continue; } return \true; } } return \false; } }