void (@NotNull VirtualFile fileOrDir, @NotNull List<? extends FilePropertyPusher<?>> pushers, Object @Nullable[] moduleValues) { final boolean isDir = fileOrDir.isDirectory(); for (int i = 0; i < pushers.size(); i++) { //noinspection unchecked FilePropertyPusher<Object> pusher = (FilePropertyPusher<Object>)pushers.get(i); if (isDir ? !pusher.acceptsDirectory(fileOrDir, myProject) : pusher.pushDirectoriesOnly() || !pusher.acceptsFile(fileOrDir, myProject)) { continue; } Object value = moduleValues != null ? moduleValues[i] : null; findAndUpdateValue(fileOrDir, pusher, value); } }