docs: public static boolean deleteDir(final Path self) {
          if (!Files.exists(self))
              return true;
  
          if (!Files.isDirectory(self))
              return false;
  
          // delete contained files
          try (DirectoryStream<Path> stream = Files.newDirectoryStream(self)) {
              for (Path path : stream) {
                  if (Files.isDirectory(path)) {
                      if (!deleteDir(path)) {
                          return false;
                      }
                  } else {
                      Files.delete(path);
                  }
              }
  
              // now delete directory itself
              Files.delete(self);
              return true;
          } catch (IOException e) {
              return false;
          }
      }