assert JetLightClass is not parsed as regular PsiClass
This commit is contained in:
+11
@@ -275,6 +275,8 @@ public class JavaDescriptorResolver {
|
||||
throw new IllegalStateException(psiClass.getQualifiedName());
|
||||
}
|
||||
|
||||
checkPsiClassIsNotJet(psiClass);
|
||||
|
||||
String name = psiClass.getName();
|
||||
ResolverBinaryClassData classData = new ResolverBinaryClassData();
|
||||
classDescriptorCache.put(psiClass.getQualifiedName(), classData);
|
||||
@@ -412,6 +414,12 @@ public class JavaDescriptorResolver {
|
||||
return classData;
|
||||
}
|
||||
|
||||
private void checkPsiClassIsNotJet(PsiClass psiClass) {
|
||||
if (psiClass instanceof JetJavaMirrorMarker) {
|
||||
throw new IllegalStateException("trying to resolve fake jet PsiClass as regular PsiClass");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* TODO
|
||||
* @see #createJavaNamespaceDescriptor(com.intellij.psi.PsiClass)
|
||||
@@ -819,6 +827,9 @@ public class JavaDescriptorResolver {
|
||||
* @see #createClassObjectDescriptor(org.jetbrains.jet.lang.descriptors.ClassDescriptor, com.intellij.psi.PsiClass)
|
||||
*/
|
||||
private ResolverNamespaceData createJavaNamespaceDescriptor(@NotNull final PsiClass psiClass) {
|
||||
|
||||
checkPsiClassIsNotJet(psiClass);
|
||||
|
||||
ResolverNamespaceData namespaceData = new ResolverNamespaceData();
|
||||
namespaceData.namespaceDescriptor = new JavaNamespaceDescriptor(
|
||||
resolveParentDescriptor(psiClass),
|
||||
|
||||
Reference in New Issue
Block a user