[Analysis API] cleanup, remove repetitive logic

This commit is contained in:
Ilya Kirillov
2022-06-24 06:43:11 +02:00
parent 567cda9767
commit 693b6f04e4
@@ -10,10 +10,8 @@ import org.jetbrains.kotlin.analysis.api.signatures.KtCallableSignature
import org.jetbrains.kotlin.analysis.api.symbols.KtCallableSymbol
import org.jetbrains.kotlin.analysis.api.symbols.KtClassifierSymbol
import org.jetbrains.kotlin.analysis.api.symbols.KtConstructorSymbol
import org.jetbrains.kotlin.fir.isSubstitutionOverride
import org.jetbrains.kotlin.fir.scopes.FirScope
import org.jetbrains.kotlin.fir.scopes.processClassifiersByName
import org.jetbrains.kotlin.fir.symbols.impl.FirPropertySymbol
import org.jetbrains.kotlin.name.Name
@@ -27,13 +25,7 @@ internal fun FirScope.getCallableSymbols(
callables.add(builder.functionLikeBuilder.buildFunctionSymbol(firSymbol))
}
processPropertiesByName(name) { firSymbol ->
val symbol = when {
firSymbol is FirPropertySymbol && firSymbol.fir.isSubstitutionOverride -> {
builder.variableLikeBuilder.buildVariableSymbol(firSymbol)
}
else -> builder.callableBuilder.buildCallableSymbol(firSymbol)
}
callables.add(symbol)
callables.add(builder.callableBuilder.buildCallableSymbol(firSymbol))
}
yieldAll(callables)
}