void (@NotNull List<? extends @NotNull VFileEvent> events) { for (VFileEvent event : events) { if (event instanceof VFileCreateEvent create) { updateFromFile(create.getParent()); } else if (event instanceof VFileCopyEvent copy) { updateFromFile(copy.getNewParent()); } else if (event instanceof VFileMoveEvent move) { updateFromFile(move.getNewParent()); updateFromFile(move.getOldParent()); updateFromFile(move.getFile()); } else { VirtualFile file = event.getFile(); if (file != null) { if (event instanceof VFileDeleteEvent) { VirtualFile parent = file.getParent(); if (parent != null) updateFromFile(parent); } updateFromFile(file); } } } }