[FIR] Pass declared member scope to methods of declaration generation extension

This commit is contained in:
Dmitriy Novozhilov
2022-05-30 17:24:34 +03:00
committed by teamcity
parent ae0bc1c078
commit e58e86932c
10 changed files with 73 additions and 30 deletions
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.fir.declarations.impl.FirResolvedDeclarationStatusIm
import org.jetbrains.kotlin.fir.declarations.utils.modality
import org.jetbrains.kotlin.fir.extensions.FirDeclarationGenerationExtension
import org.jetbrains.kotlin.fir.extensions.FirDeclarationPredicateRegistrar
import org.jetbrains.kotlin.fir.extensions.MemberGenerationContext
import org.jetbrains.kotlin.fir.extensions.predicate.annotated
import org.jetbrains.kotlin.fir.extensions.predicateBasedProvider
import org.jetbrains.kotlin.fir.moduleData
@@ -53,8 +54,8 @@ class FirParcelizeDeclarationGenerator(session: FirSession) : FirDeclarationGene
.filterIsInstance<FirRegularClassSymbol>()
}
override fun generateFunctions(callableId: CallableId, owner: FirClassSymbol<*>?): List<FirNamedFunctionSymbol> {
if (owner == null) return emptyList()
override fun generateFunctions(callableId: CallableId, context: MemberGenerationContext?): List<FirNamedFunctionSymbol> {
val owner = context?.owner ?: return emptyList()
require(owner is FirRegularClassSymbol)
val functionSymbol = when (callableId.callableName) {
DESCRIBE_CONTENTS_NAME -> {