private static boolean moduleNameMatchesDirectoryName(@NotNull Module module, @NotNull VirtualFile directoryFile, @NotNull ProjectFileIndex fileIndex) {
    if (canRealModuleNameBeHidden()) return true;
    String moduleName = module.getName();
    String directoryName = directoryFile.getName();
    if (moduleName.equalsIgnoreCase(directoryName)) {
      return true;
    }
    if (ModuleGrouperKt.isQualifiedModuleNamesEnabled(module.getProject()) && StringUtil.endsWithIgnoreCase(moduleName, directoryName)) {
      int parentPrefixLength = moduleName.length() - directoryName.length() - 1;
      if (parentPrefixLength > 0 && moduleName.charAt(parentPrefixLength) == '.') {
        VirtualFile parentDirectory = directoryFile.getParent();
        if (ProjectRootsUtil.isModuleContentRoot(parentDirectory, module.getProject())) {
          Module parentModule = fileIndex.getModuleForFile(parentDirectory);
          if (parentModule != null && parentModule.getName().length() == parentPrefixLength
              && moduleName.startsWith(parentModule.getName())) {
            return true;
          }
        }
      }
    }
    return false;
  }
private static boolean moduleNameMatchesDirectoryName(@NotNull Module module, @NotNull VirtualFile directoryFile, @NotNull ProjectFileIndex fileIndex)