refactor java global inspection graph: extract writable interfaces

This is needed to avoid access to package-private members in platform modules from java modules (IDEA-200277).
This commit is contained in:
nik
2018-10-11 10:20:02 +03:00
parent 59943bfd19
commit 7f8f3bf6f2
12 changed files with 70 additions and 41 deletions

View File

@@ -310,7 +310,7 @@ public class RefJavaUtilImpl extends RefJavaUtil {
boolean hasConstructorsMarked = false;
if (defaultConstructorOnly) {
RefMethodImpl refDefaultConstructor = (RefMethodImpl)refClass.getDefaultConstructor();
WritableRefElement refDefaultConstructor = (WritableRefElement)refClass.getDefaultConstructor();
if (refDefaultConstructor != null) {
refDefaultConstructor.addInReference(refFrom);
refFrom.addOutReference(refDefaultConstructor);
@@ -320,7 +320,7 @@ public class RefJavaUtilImpl extends RefJavaUtil {
else {
for (RefMethod cons : refClass.getConstructors()) {
if (cons instanceof RefImplicitConstructor) continue;
((RefMethodImpl)cons).addInReference(refFrom);
((WritableRefElement)cons).addInReference(refFrom);
refFrom.addOutReference(cons);
hasConstructorsMarked = true;
}