Experimental checkers: simplify visiting code a bit

This commit is contained in:
Mikhail Glukhikh
2021-06-03 16:24:12 +03:00
committed by teamcityserver
parent 702d839c66
commit b4ee116de7
2 changed files with 2 additions and 4 deletions
@@ -95,8 +95,7 @@ class ExperimentalMarkerDeclarationAnnotationChecker(private val module: ModuleD
experimentalFqName: FqName,
visited: MutableSet<CallableMemberDescriptor> = mutableSetOf()
): Boolean {
if (this in visited) return false
visited += this
if (!visited.add(this)) return false
for (overridden in overriddenDescriptors) {
if (overridden.annotations.any { it.fqName == experimentalFqName }) {
return true
@@ -175,8 +175,7 @@ class ExperimentalUsageChecker(project: Project) : CallChecker {
languageVersionSettings: LanguageVersionSettings,
visited: MutableSet<DeclarationDescriptor> = mutableSetOf()
): Set<Experimentality> {
if (this in visited) return emptySet()
visited += this
if (!visited.add(this)) return emptySet()
val result = SmartSet.create<Experimentality>()
if (this is CallableMemberDescriptor && kind == CallableMemberDescriptor.Kind.FAKE_OVERRIDE) {
for (overridden in overriddenDescriptors) {