CppProjectImpl (@NotNull IdeaModule gradleModule, @NotNull DataNode<ModuleData> ideModule) { CppProjectImpl cppProject = null; org.gradle.tooling.model.cpp.CppProject gradleCppProject = resolverCtx.getExtraProject(gradleModule, org.gradle.tooling.model.cpp.CppProject.class); if (gradleCppProject != null) { cppProject = convert(gradleCppProject); } else { // todo[Vlad] old experimental support for Gradle 4.1 - 4.9, to be removed in 2019.1 CppProject customGradleCppProject = resolverCtx.getExtraProject(gradleModule, CppProject.class); if (customGradleCppProject != null) { // store a local process copy of the object to get rid of proxy types for further serialization cppProject = new CppProjectImpl(customGradleCppProject); } } if (cppProject != null) { ideModule.createChild(CPP_PROJECT, cppProject); } return cppProject; }