diff --git a/build.gradle.kts b/build.gradle.kts index 5a652ab6b51..f864a49e4db 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -229,6 +229,7 @@ extra["compilerModules"] = arrayOf( ":compiler:frontend.java", ":compiler:cli-common", ":compiler:ir.tree", + ":compiler:ir.tree.impl", ":compiler:ir.tree.persistent", ":compiler:ir.psi2ir", ":compiler:ir.backend.common", diff --git a/compiler/cli/build.gradle.kts b/compiler/cli/build.gradle.kts index 9ca34cae78f..930924b3148 100644 --- a/compiler/cli/build.gradle.kts +++ b/compiler/cli/build.gradle.kts @@ -31,6 +31,9 @@ dependencies { compile(project(":kotlin-util-io")) compile(project(":compiler:ir.serialization.common")) + // TODO: as soon as cli-jvm is extracted out of this module, move this dependency there + compileOnly(project(":compiler:ir.tree.impl")) + compileOnly(toolsJarApi()) compileOnly(intellijCoreDep()) { includeJars("intellij-core") } compileOnly(intellijDep()) { includeIntellijCoreJarDependencies(project) } diff --git a/compiler/ir/backend.jvm/build.gradle.kts b/compiler/ir/backend.jvm/build.gradle.kts index 6a1cbd8d695..aabd4663346 100644 --- a/compiler/ir/backend.jvm/build.gradle.kts +++ b/compiler/ir/backend.jvm/build.gradle.kts @@ -10,6 +10,7 @@ dependencies { compile(project(":compiler:ir.psi2ir")) compile(project(":compiler:ir.backend.common")) compile(project(":compiler:ir.serialization.jvm")) + compileOnly(project(":compiler:ir.tree.impl")) compileOnly(intellijCoreDep()) { includeJars("intellij-core", "asm-all", "guava", rootProject = rootProject) } compileOnly(intellijDep()) { includeJars("trove4j", rootProject = rootProject) } } diff --git a/compiler/ir/ir.tree.impl/build.gradle.kts b/compiler/ir/ir.tree.impl/build.gradle.kts new file mode 100644 index 00000000000..4cbba1949df --- /dev/null +++ b/compiler/ir/ir.tree.impl/build.gradle.kts @@ -0,0 +1,14 @@ +plugins { + kotlin("jvm") + id("jps-compatible") +} + +dependencies { + compile(project(":compiler:ir.tree")) + compileOnly(intellijCoreDep()) { includeJars("intellij-core") } +} + +sourceSets { + "main" { projectDefault() } + "test" {} +} diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrAnonymousInitializerImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrAnonymousInitializerImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrAnonymousInitializerImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrAnonymousInitializerImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrClassImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrClassImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrClassImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrClassImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrConstructorImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrConstructorImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrConstructorImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrConstructorImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrDeclarationBase.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrDeclarationBase.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrDeclarationBase.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrDeclarationBase.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrEnumEntryImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrEnumEntryImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrEnumEntryImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrEnumEntryImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrErrorDeclarationImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrErrorDeclarationImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrErrorDeclarationImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrErrorDeclarationImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFieldImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrFieldImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFieldImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrFieldImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionBase.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionBase.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionBase.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionBase.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrLocalDelegatedPropertyImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrLocalDelegatedPropertyImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrLocalDelegatedPropertyImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrLocalDelegatedPropertyImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrPropertyImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrPropertyImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrPropertyImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrPropertyImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrTypeAliasImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrTypeAliasImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrTypeAliasImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrTypeAliasImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrTypeParameterImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrTypeParameterImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrTypeParameterImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrTypeParameterImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrValueParameterImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrValueParameterImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrValueParameterImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/declarations/impl/IrValueParameterImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrBlockBodyImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/expressions/impl/IrBlockBodyImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrBlockBodyImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/expressions/impl/IrBlockBodyImpl.kt diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrExpressionBodyImpl.kt b/compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/expressions/impl/IrExpressionBodyImpl.kt similarity index 100% rename from compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/expressions/impl/IrExpressionBodyImpl.kt rename to compiler/ir/ir.tree.impl/src/org/jetbrains/kotlin/ir/expressions/impl/IrExpressionBodyImpl.kt diff --git a/compiler/tests-common/build.gradle.kts b/compiler/tests-common/build.gradle.kts index 8849350f322..58b58d0edee 100644 --- a/compiler/tests-common/build.gradle.kts +++ b/compiler/tests-common/build.gradle.kts @@ -12,6 +12,7 @@ dependencies { testCompile(project(":compiler:util")) testCompile(project(":compiler:tests-mutes")) testCompile(project(":compiler:backend")) + testCompile(project(":compiler:ir.tree.impl")) testCompile(project(":compiler:fir:tree")) testCompile(project(":compiler:fir:raw-fir:psi2fir")) testCompile(project(":compiler:fir:raw-fir:light-tree2fir")) diff --git a/generators/build.gradle.kts b/generators/build.gradle.kts index c86565000b4..b895ec0757c 100644 --- a/generators/build.gradle.kts +++ b/generators/build.gradle.kts @@ -33,6 +33,7 @@ dependencies { builtinsApi("org.jetbrains.kotlin:kotlin-stdlib:$bootstrapKotlinVersion") { isTransitive = false } evaluateApi(project(":core:deserialization")) interpreterApi(project(":compiler:ir.tree")) + interpreterApi(project(":compiler:ir.tree.impl")) testCompile(builtinsSourceSet.output) testCompile(evaluateSourceSet.output) diff --git a/libraries/scripting/js-test/build.gradle.kts b/libraries/scripting/js-test/build.gradle.kts index 078c41bb497..976ef030509 100644 --- a/libraries/scripting/js-test/build.gradle.kts +++ b/libraries/scripting/js-test/build.gradle.kts @@ -1,4 +1,3 @@ - plugins { kotlin("jvm") } @@ -13,6 +12,7 @@ dependencies { testCompile(project(":kotlin-scripting-compiler")) testCompile(project(":compiler:cli")) testCompile(project(":compiler:backend.js")) + testCompile(project(":compiler:ir.tree.impl")) testCompile(project(":js:js.engines")) testCompile(intellijCoreDep()) { includeJars("intellij-core") } testRuntimeOnly(intellijCoreDep()) { includeJars("intellij-core") } diff --git a/plugins/android-extensions/android-extensions-compiler/build.gradle.kts b/plugins/android-extensions/android-extensions-compiler/build.gradle.kts index 0c8ac46e02b..473fc9bbc6a 100644 --- a/plugins/android-extensions/android-extensions-compiler/build.gradle.kts +++ b/plugins/android-extensions/android-extensions-compiler/build.gradle.kts @@ -19,6 +19,7 @@ dependencies { compileOnly(project(":compiler:backend")) compileOnly(project(":compiler:ir.backend.common")) compileOnly(project(":compiler:backend.jvm")) + compileOnly(project(":compiler:ir.tree.impl")) compileOnly(project(":kotlin-android-extensions-runtime")) compileOnly(intellijCoreDep()) { includeJars("intellij-core") } compileOnly(intellijDep()) { includeJars("asm-all", rootProject = rootProject) } diff --git a/plugins/kotlin-serialization/kotlin-serialization-compiler/build.gradle.kts b/plugins/kotlin-serialization/kotlin-serialization-compiler/build.gradle.kts index 2a81fbf64b0..7e4433ca2ea 100644 --- a/plugins/kotlin-serialization/kotlin-serialization-compiler/build.gradle.kts +++ b/plugins/kotlin-serialization/kotlin-serialization-compiler/build.gradle.kts @@ -14,6 +14,7 @@ dependencies { compileOnly(project(":compiler:backend")) compileOnly(project(":compiler:ir.backend.common")) compileOnly(project(":compiler:ir.psi2ir")) + compileOnly(project(":compiler:ir.tree.impl")) compileOnly(project(":js:js.frontend")) compileOnly(project(":js:js.translator")) compileOnly(project(":kotlin-util-klib-metadata")) diff --git a/plugins/scripting/scripting-compiler/build.gradle.kts b/plugins/scripting/scripting-compiler/build.gradle.kts index 34fbab96f6d..b4c5fb2bc5b 100644 --- a/plugins/scripting/scripting-compiler/build.gradle.kts +++ b/plugins/scripting/scripting-compiler/build.gradle.kts @@ -14,6 +14,7 @@ dependencies { compileOnly(project(":compiler:cli")) compileOnly(project(":compiler:backend.js")) compileOnly(project(":core:descriptors.runtime")) + compileOnly(project(":compiler:ir.tree.impl")) compile(project(":kotlin-scripting-common")) compile(project(":kotlin-scripting-js")) compile(project(":kotlin-util-klib")) diff --git a/prepare/idea-plugin/build.gradle.kts b/prepare/idea-plugin/build.gradle.kts index 6c6416d159e..802e094353e 100644 --- a/prepare/idea-plugin/build.gradle.kts +++ b/prepare/idea-plugin/build.gradle.kts @@ -62,7 +62,7 @@ val projectsToShadow by extra(listOf( ":idea:idea-gradle-native", ":compiler:ir.psi2ir", ":compiler:ir.tree", - ":compiler:ir.tree.persistent", + ":compiler:ir.tree.impl", ":js:js.ast", ":js:js.frontend", ":js:js.parser", diff --git a/settings.gradle b/settings.gradle index d0e9c689435..5a5dc3f2875 100644 --- a/settings.gradle +++ b/settings.gradle @@ -107,6 +107,7 @@ include ":benchmarks", ":kotlin-compiler-runner", ":compiler:cli-common", ":compiler:ir.tree", + ":compiler:ir.tree.impl", ":compiler:ir.tree.persistent", ":compiler:ir.psi2ir", ":compiler:ir.ir2cfg", @@ -445,6 +446,7 @@ project(':kotlin-daemon-tests').projectDir = "$rootDir/compiler/daemon/daemon-te project(':kotlin-compiler-runner').projectDir = "$rootDir/compiler/compiler-runner" as File project(':kotlin-ant').projectDir = "$rootDir/ant" as File project(':compiler:ir.tree').projectDir = "$rootDir/compiler/ir/ir.tree" as File +project(':compiler:ir.tree.impl').projectDir = "$rootDir/compiler/ir/ir.tree.impl" as File project(':compiler:ir.tree.persistent').projectDir = "$rootDir/compiler/ir/ir.tree.persistent" as File project(':compiler:ir.psi2ir').projectDir = "$rootDir/compiler/ir/ir.psi2ir" as File project(':compiler:ir.ir2cfg').projectDir = "$rootDir/compiler/ir/ir.ir2cfg" as File