[FIR] Reuse calculated values and clean up code
This commit is contained in:
+3
-2
@@ -76,8 +76,9 @@ class FirSignatureEnhancement(
|
||||
): FirFunctionSymbol<*> {
|
||||
return enhancements.getOrPut(function) {
|
||||
enhance(function, name).also { enhancedVersion ->
|
||||
(enhancedVersion.fir.initialSignatureAttr as? FirSimpleFunction)?.let {
|
||||
enhancedVersion.fir.initialSignatureAttr = enhancedFunction(it.symbol, it.name).fir
|
||||
val enhancedVersionFir = enhancedVersion.fir
|
||||
(enhancedVersionFir.initialSignatureAttr as? FirSimpleFunction)?.let {
|
||||
enhancedVersionFir.initialSignatureAttr = enhancedFunction(it.symbol, it.name).fir
|
||||
}
|
||||
}
|
||||
} as FirFunctionSymbol<*>
|
||||
|
||||
+3
-6
@@ -52,7 +52,7 @@ class JavaClassUseSiteMemberScope(
|
||||
private val typeParameterStack = klass.javaTypeParameterStack
|
||||
private val specialFunctions = hashMapOf<Name, Collection<FirNamedFunctionSymbol>>()
|
||||
private val syntheticPropertyByNameMap = hashMapOf<Name, FirSyntheticPropertySymbol>()
|
||||
|
||||
|
||||
private val canUseSpecialGetters: Boolean by lazy { !klass.hasKotlinSuper(session) }
|
||||
|
||||
private val callableNamesCached by lazy(LazyThreadSafetyMode.PUBLICATION) {
|
||||
@@ -161,11 +161,8 @@ class JavaClassUseSiteMemberScope(
|
||||
scope: FirScope,
|
||||
): FirNamedFunctionSymbol? {
|
||||
val specialGetterName = if (canUseSpecialGetters) getBuiltinSpecialPropertyGetterName() else null
|
||||
if (specialGetterName != null) {
|
||||
return findGetterByName(specialGetterName.asString(), scope)
|
||||
}
|
||||
|
||||
return findGetterByName(JvmAbi.getterName(fir.name.asString()), scope)
|
||||
val name = specialGetterName?.asString() ?: JvmAbi.getterName(fir.name.asString())
|
||||
return findGetterByName(name, scope)
|
||||
}
|
||||
|
||||
private fun FirPropertySymbol.findGetterByName(
|
||||
|
||||
Reference in New Issue
Block a user