Iterable<String> (final Iterable<? extends String> options, @NotNull JavaCompilingTool compilingTool) { final List<String> result = new ArrayList<>(compilingTool.getDefaultCompilerOptions()); boolean skip = false; for (String option : options) { if (FILTERED_OPTIONS.contains(option)) { skip = true; continue; } if (!skip) { if (!FILTERED_SINGLE_OPTIONS.contains(option) && !compilingTool.getDefaultCompilerOptions().contains(option)) { result.add(option); } } skip = false; } compilingTool.preprocessOptions(result); return result; }