FIR: Optimize case with no annotations on package
This commit is contained in:
committed by
TeamCityServer
parent
37785eb244
commit
38fa900e56
@@ -53,9 +53,16 @@ class FirJavaFacade(
|
||||
) {
|
||||
companion object {
|
||||
val VALUE_METHOD_NAME = Name.identifier("value")
|
||||
private const val PACKAGE_INFO_CLASS_NAME = "package-info"
|
||||
}
|
||||
|
||||
private val packageCache = session.firCachesFactory.createCache(classFinder::findPackage)
|
||||
private val packageCache = session.firCachesFactory.createCache { fqName: FqName ->
|
||||
val knownClassNames: Set<String>? = knownClassNamesInPackage.getValue(fqName)
|
||||
classFinder.findPackage(
|
||||
fqName,
|
||||
mayHaveAnnotations = if (knownClassNames != null) PACKAGE_INFO_CLASS_NAME in knownClassNames else true
|
||||
)
|
||||
}
|
||||
private val knownClassNamesInPackage = session.firCachesFactory.createCache(classFinder::knownClassNamesInPackage)
|
||||
|
||||
private val parentClassTypeParameterStackCache = mutableMapOf<FirRegularClassSymbol, JavaTypeParameterStack>()
|
||||
|
||||
Reference in New Issue
Block a user