IR: move frontend-dependent code into implementations in psi2ir

This commit is contained in:
Alexander Udalov
2021-02-21 15:41:48 +01:00
parent d991a3e40f
commit addabae8d2
22 changed files with 167 additions and 73 deletions
@@ -34,12 +34,12 @@ import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl
import org.jetbrains.kotlin.ir.util.IdSignatureComposer
import org.jetbrains.kotlin.ir.util.NameProvider
import org.jetbrains.kotlin.ir.util.SymbolTable
import org.jetbrains.kotlin.ir.util.generateTypicalIrProviderList
import org.jetbrains.kotlin.js.analyze.TopDownAnalyzerFacadeForJS
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.psi2ir.Psi2IrConfiguration
import org.jetbrains.kotlin.psi2ir.Psi2IrTranslator
import org.jetbrains.kotlin.psi2ir.generators.GeneratorExtensions
import org.jetbrains.kotlin.psi2ir.generators.generateTypicalIrProviderList
import org.jetbrains.kotlin.resolve.AnalyzingUtils
import org.jetbrains.kotlin.resolve.BindingContext
import org.jetbrains.kotlin.resolve.CompilerEnvironment
@@ -48,7 +48,6 @@ import org.jetbrains.kotlin.test.ConfigurationKind
import org.jetbrains.kotlin.test.InTextDirectivesUtils
import org.jetbrains.kotlin.test.util.KtTestUtil.getAnnotationsJar
import java.io.File
import java.util.*
abstract class AbstractIrGeneratorTestCase : CodegenTestCase() {
override fun doMultiFileTest(wholeFile: File, files: List<TestFile>) {
@@ -21,6 +21,7 @@ import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl
import org.jetbrains.kotlin.ir.util.*
import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.psi2ir.generators.DeclarationStubGeneratorImpl
import org.jetbrains.kotlin.scripting.compiler.plugin.loadScriptConfiguration
import org.jetbrains.kotlin.test.KotlinTestUtils
import org.jetbrains.kotlin.test.testFramework.KtUsefulTestCase
@@ -54,7 +55,7 @@ abstract class AbstractIrTextTestCase : AbstractIrGeneratorTestCase() {
val mangler = JsManglerDesc
val signaturer = IdSignatureDescriptor(mangler)
val stubGenerator = DeclarationStubGenerator(
val stubGenerator = DeclarationStubGeneratorImpl(
irModule.descriptor,
SymbolTable(signaturer, IrFactoryImpl), // TODO
myEnvironment.configuration.languageVersionSettings