[k2] Convert allDependsOnDependencies to FirModuleData member property

This essentially caches topological sort of dependsOn-dependencies in
FirModuleData. Caching it became more necessary after previous commits
that started to call it quite frequently in
VariableStorageImpl.getStability
This commit is contained in:
Dmitry Savvinov
2024-01-30 18:12:49 +01:00
committed by Space Team
parent f28863b983
commit d80dee6e1c
3 changed files with 11 additions and 3 deletions
@@ -48,6 +48,10 @@ class LLFirModuleData private constructor(val ktModule: KtModule) : FirModuleDat
ktModule.directDependsOnDependencies.map(::LLFirModuleData)
}
override val allDependsOnDependencies: List<FirModuleData> by lazy(LazyThreadSafetyMode.PUBLICATION) {
ktModule.transitiveDependsOnDependencies.map(::LLFirModuleData)
}
override val friendDependencies: List<FirModuleData> by lazy(LazyThreadSafetyMode.PUBLICATION) {
ktModule.directFriendDependencies.map(::LLFirModuleData)
}