diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/CliLightClassGenerationSupport.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/CliLightClassGenerationSupport.kt index 17225522d7a..489ffe5a2c2 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/CliLightClassGenerationSupport.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/CliLightClassGenerationSupport.kt @@ -139,7 +139,7 @@ public class CliLightClassGenerationSupport(project: Project) : LightClassGenera } override fun getPsiClass(classOrObject: KtClassOrObject): PsiClass? { - return KtLightClassForExplicitDeclaration.create(psiManager, classOrObject) + return KtLightClassForExplicitDeclaration.create(classOrObject) } override fun resolveClassToDescriptor(classOrObject: KtClassOrObject): ClassDescriptor? { diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/FakeLightClassForFileOfPackage.java b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/FakeLightClassForFileOfPackage.java index 6bc84ad1915..63b1e864e39 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/FakeLightClassForFileOfPackage.java +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/FakeLightClassForFileOfPackage.java @@ -20,7 +20,6 @@ import com.intellij.lang.Language; import com.intellij.psi.PsiClass; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; -import com.intellij.psi.PsiManager; import com.intellij.psi.impl.light.AbstractLightClass; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -41,10 +40,8 @@ public class FakeLightClassForFileOfPackage extends AbstractLightClass implement private final KtLightClassForFacade delegate; private final KtFile file; - public FakeLightClassForFileOfPackage( - @NotNull PsiManager manager, @NotNull KtLightClassForFacade delegate, @NotNull KtFile file - ) { - super(manager); + public FakeLightClassForFileOfPackage(@NotNull KtLightClassForFacade delegate, @NotNull KtFile file) { + super(delegate.getManager()); this.delegate = delegate; this.file = file; } @@ -82,7 +79,7 @@ public class FakeLightClassForFileOfPackage extends AbstractLightClass implement @NotNull @Override public PsiElement copy() { - return new FakeLightClassForFileOfPackage(getManager(), delegate, file); + return new FakeLightClassForFileOfPackage(delegate, file); } @Override diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForAnonymousDeclaration.java b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForAnonymousDeclaration.java index 127ab6cf09e..df549c8d7ba 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForAnonymousDeclaration.java +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForAnonymousDeclaration.java @@ -37,8 +37,8 @@ class KtLightClassForAnonymousDeclaration extends KtLightClassForExplicitDeclara private SoftReference cachedBaseType = null; - KtLightClassForAnonymousDeclaration(@NotNull PsiManager manager, @NotNull FqName name, @NotNull KtClassOrObject classOrObject) { - super(manager, name, classOrObject); + KtLightClassForAnonymousDeclaration(@NotNull FqName name, @NotNull KtClassOrObject classOrObject) { + super(name, classOrObject); } @NotNull diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForEnumEntry.kt b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForEnumEntry.kt index 00aae7db0ac..498fce590c3 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForEnumEntry.kt +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForEnumEntry.kt @@ -16,17 +16,15 @@ package org.jetbrains.kotlin.asJava -import com.intellij.psi.PsiManager +import com.intellij.psi.PsiEnumConstant +import com.intellij.psi.PsiEnumConstantInitializer import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.psi.KtEnumEntry -import com.intellij.psi.PsiEnumConstantInitializer -import com.intellij.psi.PsiEnumConstant internal class KtLightClassForEnumEntry( - psiManager: PsiManager, fqName: FqName, enumEntry: KtEnumEntry, private val enumConstant: PsiEnumConstant -): KtLightClassForAnonymousDeclaration(psiManager, fqName, enumEntry), PsiEnumConstantInitializer { +): KtLightClassForAnonymousDeclaration(fqName, enumEntry), PsiEnumConstantInitializer { override fun getEnumConstant(): PsiEnumConstant = enumConstant } diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForExplicitDeclaration.kt b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForExplicitDeclaration.kt index da05690c5a6..de66ce1016b 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForExplicitDeclaration.kt +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForExplicitDeclaration.kt @@ -48,10 +48,9 @@ import org.jetbrains.kotlin.resolve.jvm.JvmClassName import javax.swing.Icon public open class KtLightClassForExplicitDeclaration( - manager: PsiManager, protected val classFqName: FqName, // FqName of (possibly inner) class protected val classOrObject: KtClassOrObject) -: KtWrappingLightClass(manager), KtJavaMirrorMarker, StubBasedPsiElement> { +: KtWrappingLightClass(classOrObject.manager), KtJavaMirrorMarker, StubBasedPsiElement> { private var delegate: PsiClass? = null private fun getLocalClassParent(): PsiElement? { @@ -138,7 +137,7 @@ public open class KtLightClassForExplicitDeclaration( override fun getFqName(): FqName = classFqName override fun copy(): PsiElement { - return KtLightClassForExplicitDeclaration(manager, classFqName, classOrObject.copy() as KtClassOrObject) + return KtLightClassForExplicitDeclaration(classFqName, classOrObject.copy() as KtClassOrObject) } override fun getDelegate(): PsiClass { @@ -365,7 +364,7 @@ public open class KtLightClassForExplicitDeclaration( return getDelegate().innerClasses .map { val declaration = ClsWrapperStubPsiFactory.getOriginalDeclaration(it) as KtClassOrObject? - if (declaration != null) create(myManager, declaration, it) else null + if (declaration != null) create(declaration, it) else null } .filterNotNull() } @@ -387,7 +386,6 @@ public open class KtLightClassForExplicitDeclaration( @JvmOverloads public fun create( - manager: PsiManager, classOrObject: KtClassOrObject, psiClass: PsiClass? = null ): KtLightClassForExplicitDeclaration? { @@ -398,17 +396,17 @@ public open class KtLightClassForExplicitDeclaration( val fqName = predictFqName(classOrObject) ?: return null if (classOrObject is KtObjectDeclaration && classOrObject.isObjectLiteral()) { - return KtLightClassForAnonymousDeclaration(manager, fqName, classOrObject) + return KtLightClassForAnonymousDeclaration(fqName, classOrObject) } if (classOrObject.hasInterfaceDefaultImpls) { val implsFqName = fqName.defaultImplsChild() if (implsFqName.asString() == psiClass?.qualifiedName) { - return KtLightClassForInterfaceDefaultImpls(manager, implsFqName, classOrObject) + return KtLightClassForInterfaceDefaultImpls(implsFqName, classOrObject) } } - return KtLightClassForExplicitDeclaration(manager, fqName, classOrObject) + return KtLightClassForExplicitDeclaration(fqName, classOrObject) } private fun predictFqName(classOrObject: KtClassOrObject): FqName? { diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForInterfaceDefaultImpls.kt b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForInterfaceDefaultImpls.kt index 6560bfdb8d0..782f0dd3cd4 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForInterfaceDefaultImpls.kt +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightClassForInterfaceDefaultImpls.kt @@ -22,13 +22,12 @@ import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.psi.KtClassOrObject public open class KtLightClassForInterfaceDefaultImpls( - manager: PsiManager, classFqName: FqName, classOrObject: KtClassOrObject) -: KtLightClassForExplicitDeclaration(manager, classFqName, classOrObject){ +: KtLightClassForExplicitDeclaration(classFqName, classOrObject){ override fun copy(): PsiElement { - return KtLightClassForInterfaceDefaultImpls(manager, classFqName, classOrObject.copy() as KtClassOrObject) + return KtLightClassForInterfaceDefaultImpls(classFqName, classOrObject.copy() as KtClassOrObject) } override fun getTypeParameterList(): PsiTypeParameterList? = null diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightField.kt b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightField.kt index 5e941d96fa5..1191c0248fa 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightField.kt +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KtLightField.kt @@ -125,7 +125,7 @@ sealed class KtLightFieldImpl( val kotlinEnumEntry = origin as? KtEnumEntry val initializingClass = if (kotlinEnumEntry != null && kotlinEnumEntry.declarations.isNotEmpty()) { val enumConstantFqName = FqName(containingClass.getFqName().asString() + "." + kotlinEnumEntry.name) - KtLightClassForEnumEntry(delegate.manager, enumConstantFqName, kotlinEnumEntry, delegate) + KtLightClassForEnumEntry(enumConstantFqName, kotlinEnumEntry, delegate) } else null return KtLightEnumConstant(kotlinEnumEntry, delegate, containingClass, initializingClass) diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/IDELightClassGenerationSupport.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/IDELightClassGenerationSupport.kt index 3e5614cdedd..1fe07ae84bd 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/IDELightClassGenerationSupport.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/IDELightClassGenerationSupport.kt @@ -34,7 +34,6 @@ import org.jetbrains.kotlin.descriptors.ClassDescriptor import org.jetbrains.kotlin.fileClasses.javaFileFacadeFqName import org.jetbrains.kotlin.idea.decompiler.navigation.SourceNavigationHelper import org.jetbrains.kotlin.idea.project.ResolveElementCache -import org.jetbrains.kotlin.idea.resolve.ResolutionFacade import org.jetbrains.kotlin.idea.stubindex.* import org.jetbrains.kotlin.idea.stubindex.KotlinSourceFilterScope.sourceAndClassFiles import org.jetbrains.kotlin.idea.util.ProjectRootsUtil @@ -43,7 +42,6 @@ import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.getElementTextWithContext import org.jetbrains.kotlin.resolve.BindingContext -import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode import org.jetbrains.kotlin.resolve.lazy.ForceResolveUtil import org.jetbrains.kotlin.resolve.lazy.NoDescriptorForDeclarationException import org.jetbrains.kotlin.resolve.lazy.ResolveSession @@ -147,7 +145,7 @@ public class IDELightClassGenerationSupport(private val project: Project) : Ligh } return SourceNavigationHelper.getOriginalClass(classOrObject) } - return KtLightClassForExplicitDeclaration.create(psiManager, classOrObject) + return KtLightClassForExplicitDeclaration.create(classOrObject) } private fun withFakeLightClasses( @@ -160,7 +158,7 @@ public class IDELightClassGenerationSupport(private val project: Project) : Ligh lightClasses.add(lightClassForFacade) if (facadeFiles.size() > 1) { lightClasses.addAll(facadeFiles.map { - FakeLightClassForFileOfPackage(psiManager, lightClassForFacade, it) + FakeLightClassForFileOfPackage(lightClassForFacade, it) }) } return lightClasses