From be6bef13d31833f17d1d5d6c65439441f8df6683 Mon Sep 17 00:00:00 2001 From: Denis Zharkov Date: Thu, 24 Sep 2020 14:40:03 +0300 Subject: [PATCH] FIR2IR: Drop some unused declarations --- .../kotlin/fir/backend/ConversionUtils.kt | 66 ------------------- 1 file changed, 66 deletions(-) diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/ConversionUtils.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/ConversionUtils.kt index 071b2231ed8..12f1a174c45 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/ConversionUtils.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/ConversionUtils.kt @@ -22,7 +22,6 @@ import org.jetbrains.kotlin.fir.references.impl.FirPropertyFromParameterResolved import org.jetbrains.kotlin.fir.resolve.* import org.jetbrains.kotlin.fir.resolve.calls.SyntheticPropertySymbol import org.jetbrains.kotlin.fir.resolve.providers.FirProvider -import org.jetbrains.kotlin.fir.resolve.toSymbol import org.jetbrains.kotlin.fir.scopes.ProcessorAction import org.jetbrains.kotlin.fir.scopes.processDirectlyOverriddenFunctions import org.jetbrains.kotlin.fir.scopes.processDirectlyOverriddenProperties @@ -212,71 +211,6 @@ private fun FirConstKind<*>.toIrConstKind(): IrConstKind<*> = when (this) { FirConstKind.IntegerLiteral, FirConstKind.UnsignedIntegerLiteral -> throw IllegalArgumentException() } -private val simpleDeclarationCollector: (FirDeclaration, MutableMap) -> Unit = { declaration, map -> - when (declaration) { - is FirSimpleFunction -> - map.putIfAbsent(declaration.name, declaration) - is FirVariable<*> -> - map.putIfAbsent(declaration.name, declaration) - } -} - -internal fun FirClass<*>.collectCallableNamesFromSupertypes(session: FirSession): Set { - val result = mutableMapOf() - for (superTypeRef in superTypeRefs) { - superTypeRef.collectDeclarationsFromThisAndSupertypes(session, result, simpleDeclarationCollector) - } - return result.keys -} - -internal fun FirClass<*>.collectContributedFunctionsFromSupertypes( - session: FirSession, - record: (FirDeclaration, MutableMap) -> Unit -): Map { - val result = mutableMapOf() - for (superTypeRef in superTypeRefs) { - superTypeRef.collectDeclarationsFromThisAndSupertypes(session, result, record) - } - return result -} - -private fun FirClass<*>.collectDeclarationsFromSupertypes( - session: FirSession, - result: MutableMap, - record: (FirDeclaration, MutableMap) -> Unit -): Map { - for (superTypeRef in superTypeRefs) { - superTypeRef.collectDeclarationsFromThisAndSupertypes(session, result, record) - } - return result -} - -private fun FirTypeRef.collectDeclarationsFromThisAndSupertypes( - session: FirSession, - result: MutableMap, - record: (FirDeclaration, MutableMap) -> Unit -): Map { - if (this is FirResolvedTypeRef) { - val superType = type - if (superType is ConeClassLikeType) { - when (val superSymbol = superType.lookupTag.toSymbol(session)) { - is FirClassSymbol -> { - val superClass = superSymbol.fir as FirClass<*> - for (declaration in superClass.declarations) { - record(declaration, result) - } - superClass.collectDeclarationsFromSupertypes(session, result, record) - } - is FirTypeAliasSymbol -> { - val superAlias = superSymbol.fir - superAlias.expandedTypeRef.collectDeclarationsFromThisAndSupertypes(session, result, record) - } - } - } - } - return result -} - internal tailrec fun FirCallableSymbol<*>.deepestOverriddenSymbol(): FirCallableSymbol<*> { val overriddenSymbol = overriddenSymbol ?: return this return overriddenSymbol.deepestOverriddenSymbol()