[kotlin] K2 Psi Unifier: compare KaSyntheticJavaPropertySymbols by their javaGetterSymbols and javaSetterSymbols

IJ-CR-146017
^KTIJ-28923

GitOrigin-RevId: dd63e555d01392a3002a844670082519a694d022
This commit is contained in:
Andrey Cherkasov
2024-10-17 15:19:59 +00:00
committed by intellij-monorepo-bot
parent 0dac15356b
commit d2c72b7c41
@@ -229,13 +229,21 @@ object K2SemanticMatcher {
}
}
if (targetSymbol is KaSyntheticJavaPropertySymbol && patternSymbol is KaSyntheticJavaPropertySymbol &&
targetSymbol.callableId == patternSymbol.callableId
areSyntheticPropertiesEqual(targetSymbol, patternSymbol)
) {
return true
}
return targetSymbol == patternSymbol || symbols[targetSymbol] == patternSymbol
}
private fun areSyntheticPropertiesEqual(
targetSyntheticProperty: KaSyntheticJavaPropertySymbol,
patternSyntheticProperty: KaSyntheticJavaPropertySymbol,
): Boolean {
return targetSyntheticProperty.javaGetterSymbol == patternSyntheticProperty.javaGetterSymbol &&
targetSyntheticProperty.javaSetterSymbol == patternSyntheticProperty.javaSetterSymbol
}
context(KaSession)
fun areBlockBodyOwnersEqualOrAssociated(targetFunction: KaFunctionSymbol, patternFunction: KaFunctionSymbol): Boolean =
targetFunction == patternFunction || blockBodyOwners[targetFunction] == patternFunction