FIR: eliminate most usages of FirSession.service() and getService()

This commit is contained in:
Mikhail Glukhikh
2019-10-07 12:58:58 +03:00
parent 708d914224
commit 4cd8b78779
29 changed files with 48 additions and 71 deletions
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.fir.expressions.*
import org.jetbrains.kotlin.fir.references.FirErrorNamedReference
import org.jetbrains.kotlin.fir.resolve.FirSymbolProvider
import org.jetbrains.kotlin.fir.resolve.directExpansionType
import org.jetbrains.kotlin.fir.resolve.firSymbolProvider
import org.jetbrains.kotlin.fir.resolve.transformers.firUnsafe
import org.jetbrains.kotlin.fir.symbols.AbstractFirBasedSymbol
import org.jetbrains.kotlin.fir.symbols.impl.*
@@ -279,7 +280,7 @@ class FirVisualizer(private val firFile: FirFile) : BaseRenderer() {
inner class FirRenderer : FirVisitor<Unit, StringBuilder>() {
private val session = firFile.session
private val filePackage = firFile.packageFqName.toString().replace(".", "/")
private val symbolProvider = firFile.session.getService(FirSymbolProvider::class)
private val symbolProvider = firFile.session.firSymbolProvider
private fun removeCurrentFilePackage(fqName: String): String {
return if (fqName.startsWith(filePackage) && !fqName.substring(filePackage.length + 1).contains("/")) {
@@ -15,10 +15,9 @@ import org.jetbrains.kotlin.compiler.visualizer.FirVisualizer
import org.jetbrains.kotlin.fir.builder.RawFirBuilder
import org.jetbrains.kotlin.fir.createSession
import org.jetbrains.kotlin.fir.render
import org.jetbrains.kotlin.fir.resolve.FirProvider
import org.jetbrains.kotlin.fir.resolve.firProvider
import org.jetbrains.kotlin.fir.resolve.impl.FirProviderImpl
import org.jetbrains.kotlin.fir.resolve.transformers.FirTotalResolveTransformer
import org.jetbrains.kotlin.fir.service
import org.jetbrains.kotlin.test.KotlinTestUtils
import org.jetbrains.kotlin.visualizer.AbstractVisualizer
import org.junit.Assert
@@ -40,7 +39,7 @@ abstract class AbstractFirVisualizer : AbstractVisualizer() {
val transformer = FirTotalResolveTransformer()
val firFiles = ktFiles.map {
val firFile = builder.buildFirFile(it)
(session.service<FirProvider>() as FirProviderImpl).recordFile(firFile)
(session.firProvider as FirProviderImpl).recordFile(firFile)
firFile
}.also {
try {