[analysis api fir] put every library into a separate KtModule in tests

This commit is contained in:
Ilya Kirillov
2022-04-07 08:09:00 +02:00
parent 252d8e283b
commit 2649788b87
43 changed files with 778 additions and 399 deletions
@@ -20,7 +20,7 @@ public abstract class ProjectStructureProvider {
// TODO: We rather need a session or facade that maintains this information.
public abstract fun getKtLibraryModules(): Collection<KtLibraryModule>
public abstract fun getStdlibModule(module: KtModule): KtLibraryModule?
public abstract fun getStdlibWithBuiltinsModule(module: KtModule): KtLibraryModule?
}
/**
@@ -6,13 +6,31 @@
package org.jetbrains.kotlin.analysis.project.structure
/**
* A list of all modules current module can depend onwith regular dependency
* A list of all modules current module can depend on with regular dependency
*
* @see KtModule.directRegularDependencies
*/
public inline fun <reified M : KtModule> KtModule.directRegularDependenciesOfType(): Sequence<M> =
directRegularDependencies.asSequence().filterIsInstance<M>()
/**
* A list of all modules current module can depend on with friend dependency
*
* @see KtModule.directFriendDependencies
*/
public inline fun <reified M : KtModule> KtModule.directFriendDependenciesOfType(): Sequence<M> =
directFriendDependencies.asSequence().filterIsInstance<M>()
/**
* A list of all modules current module can depend on with refinement dependency
*
* @see KtModule.directRefinementDependencies
*/
public inline fun <reified M : KtModule> KtModule.directRefinementDependenciesOfType(): Sequence<M> =
directRefinementDependencies.asSequence().filterIsInstance<M>()
/**
* A list of all other modules current module can depend on.
*