[FIR] Add references to control flow graph to FirFunction and FirProperty

Also add updating CFG references anfter data flow analyzer builds graph
That graph is needed for further control flow analysis
This commit is contained in:
Dmitriy Novozhilov
2019-08-22 12:59:52 +03:00
parent 56ac1201b6
commit 9f0781c9de
22 changed files with 217 additions and 8 deletions
@@ -16,6 +16,8 @@ import org.jetbrains.kotlin.fir.declarations.impl.FirAbstractCallableMember
import org.jetbrains.kotlin.fir.declarations.impl.FirConstructorImpl.Companion.NAME
import org.jetbrains.kotlin.fir.expressions.FirBlock
import org.jetbrains.kotlin.fir.expressions.FirDelegatedConstructorCall
import org.jetbrains.kotlin.fir.references.FirControlFlowGraphReference
import org.jetbrains.kotlin.fir.references.FirEmptyControlFlowGraphReference
import org.jetbrains.kotlin.fir.symbols.impl.FirConstructorSymbol
import org.jetbrains.kotlin.fir.transformInplace
import org.jetbrains.kotlin.fir.types.FirTypeRef
@@ -54,8 +56,14 @@ class FirJavaConstructor(
override val valueParameters = mutableListOf<FirValueParameter>()
override val controlFlowGraphReference: FirControlFlowGraphReference? get() = null
override fun <D> transformValueParameters(transformer: FirTransformer<D>, data: D): FirJavaConstructor {
valueParameters.transformInplace(transformer, data)
return this
}
override fun <D> transformControlFlowGraphReference(transformer: FirTransformer<D>, data: D): FirJavaConstructor {
return this
}
}