Skip to content

Commit 3db7350

Browse files
imbanankointellij-monorepo-bot
authored andcommitted
[kotlin] KTIJ-35987 get rid of stub access when creating script module
Merge-request: IJ-MR-178696 Merged-by: Vlad Koshkin <[email protected]> GitOrigin-RevId: 2988648f1de09e8306fbf667d4fd6af4de2c7c4f
1 parent 410645a commit 3db7350

File tree

1 file changed

+12
-21
lines changed

1 file changed

+12
-21
lines changed

plugins/kotlin/base/fir/scripting/src/org/jetbrains/kotlin/base/fir/scripting/projectStructure/FirKaScriptingModuleFactory.kt

Lines changed: 12 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -9,21 +9,29 @@ import org.jetbrains.kotlin.analysis.api.projectStructure.KaModule
99
import org.jetbrains.kotlin.base.fir.scripting.projectStructure.modules.KaScriptDependencyLibraryModuleImpl
1010
import org.jetbrains.kotlin.base.fir.scripting.projectStructure.modules.KaScriptModuleImpl
1111
import org.jetbrains.kotlin.idea.KotlinFileType
12-
import org.jetbrains.kotlin.idea.core.script.k2.modules.KotlinScriptLibraryEntity
1312
import org.jetbrains.kotlin.idea.base.fir.projectStructure.FirKaModuleFactory
13+
import org.jetbrains.kotlin.idea.core.script.k2.modules.KotlinScriptLibraryEntity
1414
import org.jetbrains.kotlin.psi.KtFile
15+
import org.jetbrains.kotlin.scripting.definitions.isNonScript
1516

1617
internal class FirKaScriptingModuleFactory : FirKaModuleFactory {
1718
override fun createScriptLibraryModule(
18-
project: Project,
19-
entity: KotlinScriptLibraryEntity
19+
project: Project, entity: KotlinScriptLibraryEntity
2020
): KaLibraryModule {
2121
return KaScriptDependencyLibraryModuleImpl(entity, project)
2222
}
2323

2424
override fun createKaModuleByPsiFile(file: PsiFile): KaModule? {
2525
val ktFile = file as? KtFile ?: return null
26+
27+
/*
28+
For compiled scripts we should not create any KaScriptModule
29+
as we do not treat them as scripts, a proper module for them
30+
should be KaScriptDependencyModule. */
31+
if (ktFile.isCompiled) return null
32+
2633
if (file.virtualFile is VirtualFileWindow) return null
34+
if (file.virtualFile.isNonScript()) return null
2735

2836
if (file.virtualFile.extension == KotlinFileType.EXTENSION) {
2937
/*
@@ -37,23 +45,6 @@ internal class FirKaScriptingModuleFactory : FirKaModuleFactory {
3745
return null
3846
}
3947

40-
return when {
41-
!ktFile.isScript() -> {
42-
null
43-
}
44-
ktFile.isCompiled -> {
45-
/*
46-
For compiled scripts we should not create any KaScriptModule
47-
as we do not treat them as scripts, a proper module for them
48-
should be KaScriptDependencyModule.
49-
*/
50-
null
51-
}
52-
else -> {
53-
val virtualFile = file.originalFile.virtualFile
54-
55-
KaScriptModuleImpl(file.project, virtualFile)
56-
}
57-
}
48+
return KaScriptModuleImpl(file.project, file.originalFile.virtualFile)
5849
}
5950
}

0 commit comments

Comments
 (0)