@Override
  public PsiClass @NotNull [] getClasses(@NotNull PsiPackage psiPackage, @NotNull GlobalSearchScope scope) {
    final List<PsiClass> result = new ArrayList<>();
    processDirectories(psiPackage.getQualifiedName(), scope, dir -> {
      for (final VirtualFile file : dir.getChildren()) {
        if (!file.isDirectory() && ArrayUtil.contains(file.getExtension(), myFileExtensions)) {
          final PsiFile psi = myManager.findFile(file);
          if (psi instanceof PsiClassOwner) {
            ContainerUtil.addAll(result, ((PsiClassOwner)psi).getClasses());
          }
        }
      }
      return true;
    });
    return result.toArray(PsiClass.EMPTY_ARRAY);
  }
@Override
  public PsiClass @NotNull [] getClasses(@NotNull PsiPackage psiPackage, @NotNull GlobalSearchScope scope)