void (@NotNull Compiler compiler, @NotNull final String factoryId) { myCompilers.put(compiler, factoryId); // supporting file instrumenting compilers and validators for external build // Since these compilers are IDE-specific and use PSI, it is ok to run them before and after the build in the IDE if (compiler instanceof SourceInstrumentingCompiler) { addBeforeTask(new FileProcessingCompilerAdapterTask((FileProcessingCompiler)compiler)); } else if (compiler instanceof Validator) { addAfterTask(new FileProcessingCompilerAdapterTask((FileProcessingCompiler)compiler)); } }