void (@NotNull RefMethod refMethod) { if (!filter.accepts(refMethod) || processedSuspicious.contains(refMethod)) { return; } processedSuspicious.add(refMethod); if (refMethod instanceof RefImplicitConstructor ctor) { RefClass ownerClass = ctor.getOwnerClass(); doVisitClass(ownerClass); return; } if (refMethod.isConstructor()) { RefClass ownerClass = refMethod.getOwnerClass(); if (ownerClass != null) { queryQualifiedNameUsages(ownerClass); } } UMethod uMethod = refMethod.getUastElement(); if (uMethod != null && (isSerializablePatternMethod(uMethod, refMethod.getOwnerClass()) || // todo this method potentially leads to INRE. Perhaps, it should be reconsidered/deleted (IJ-CR-5556) belongsToRepeatableAnnotationContainer(uMethod, refMethod.getOwnerClass()))) { getEntryPointsManager(globalContext).addEntryPoint(refMethod, false); } else if (!refMethod.isExternalOverride() && !PsiModifier.PRIVATE.equals(refMethod.getAccessModifier())) { processedSuspicious.addAll(refMethod.getDerivedMethods()); enqueueMethodUsages(globalContext, refMethod); requestAdded[0] = true; } }