private static @NotNull Iterator<JvmElement> iterateDeclarations(@NotNull PsiElement declaringElement) {
    List<JvmDeclarationSearcher> searchers = JvmDeclarationSearcher.EP.allForLanguage(declaringElement.getLanguage());
    return searchers.isEmpty() ? Collections.emptyIterator() : iterateDeclarations(declaringElement, searchers);
  }
private static @NotNull Iterator<JvmElement> iterateDeclarations(@NotNull PsiElement declaringElement)