[NoArg] Reorganize module structure of NoArg plugin

This commit is contained in:
Dmitriy Novozhilov
2022-05-17 17:05:31 +03:00
committed by teamcity
parent 0f757c300a
commit 8fc4962213
53 changed files with 88 additions and 33 deletions
+1 -1
View File
@@ -74,7 +74,7 @@
<option value="$PROJECT_DIR$/plugins/kapt3/kapt3-compiler/testData" />
<option value="$PROJECT_DIR$/plugins/kotlin-serialization/kotlin-serialization-compiler/testData" />
<option value="$PROJECT_DIR$/plugins/lombok/lombok-compiler-plugin/testData" />
<option value="$PROJECT_DIR$/plugins/noarg/noarg-cli/testData" />
<option value="$PROJECT_DIR$/plugins/noarg/testData" />
<option value="$PROJECT_DIR$/plugins/parcelize/parcelize-compiler/testData" />
<option value="$PROJECT_DIR$/plugins/sam-with-receiver/sam-with-receiver-cli/testData" />
</array>
@@ -1,4 +1,3 @@
description = "Kotlin NoArg Compiler Plugin"
plugins {
@@ -7,15 +6,9 @@ plugins {
}
dependencies {
compileOnly(project(":compiler:frontend"))
compileOnly(project(":compiler:frontend.java"))
compileOnly(project(":compiler:backend"))
compileOnly(project(":compiler:util"))
compileOnly(project(":compiler:plugin-api"))
compileOnly(project(":compiler:ir.backend.common"))
compileOnly(intellijCore())
compileOnly(commonDependency("org.jetbrains.intellij.deps:asm-all"))
implementation(kotlinStdlib())
embedded(project(":kotlin-noarg-compiler-plugin.k1"))
embedded(project(":kotlin-noarg-compiler-plugin.backend"))
embedded(project(":kotlin-noarg-compiler-plugin.cli"))
testApi(project(":compiler:backend"))
testApi(project(":compiler:cli"))
@@ -25,16 +18,13 @@ dependencies {
}
sourceSets {
"main" { projectDefault() }
"main" { none() }
"test" { projectDefault() }
}
runtimeJar()
sourcesJar()
javadocJar()
testsJar()
projectTest(parallel = true) {
@@ -0,0 +1,23 @@
description = "Kotlin NoArg Compiler Plugin (Backend)"
plugins {
kotlin("jvm")
id("jps-compatible")
}
dependencies {
compileOnly(project(":compiler:backend"))
compileOnly(project(":compiler:ir.backend.common"))
compileOnly(intellijCore())
compileOnly(commonDependency("org.jetbrains.intellij.deps:asm-all"))
implementation(kotlinStdlib())
}
sourceSets {
"main" { projectDefault() }
"test" { none() }
}
runtimeJar()
sourcesJar()
javadocJar()
@@ -1,5 +1,5 @@
/*
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
@@ -24,7 +24,7 @@ import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid
import org.jetbrains.kotlin.name.JvmNames.JVM_OVERLOADS_FQ_NAME
import org.jetbrains.kotlin.psi.KtModifierListOwner
internal class NoArgIrGenerationExtension(
class NoArgIrGenerationExtension(
private val annotations: List<String>,
private val invokeInitializers: Boolean,
) : IrGenerationExtension {
+25
View File
@@ -0,0 +1,25 @@
description = "Kotlin NoArg Compiler Plugin (CLI)"
plugins {
kotlin("jvm")
id("jps-compatible")
}
dependencies {
api(project(":kotlin-noarg-compiler-plugin.k1"))
api(project(":kotlin-noarg-compiler-plugin.backend"))
compileOnly(project(":compiler:util"))
compileOnly(project(":compiler:plugin-api"))
compileOnly(project(":compiler:backend"))
compileOnly(project(":compiler:ir.backend.common"))
compileOnly(intellijCore())
}
sourceSets {
"main" { projectDefault() }
"test" { none() }
}
runtimeJar()
sourcesJar()
javadocJar()
+21
View File
@@ -0,0 +1,21 @@
description = "Kotlin NoArg Compiler Plugin (K1)"
plugins {
kotlin("jvm")
id("jps-compatible")
}
dependencies {
compileOnly(project(":compiler:frontend"))
compileOnly(project(":compiler:frontend.java"))
compileOnly(intellijCore())
}
sourceSets {
"main" { projectDefault() }
"test" { none() }
}
runtimeJar()
sourcesJar()
javadocJar()
@@ -1,17 +1,6 @@
/*
* Copyright 2010-2016 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.noarg.diagnostic
@@ -28,7 +17,7 @@ import org.jetbrains.kotlin.resolve.checkers.DeclarationChecker
import org.jetbrains.kotlin.resolve.checkers.DeclarationCheckerContext
import org.jetbrains.kotlin.resolve.descriptorUtil.getSuperClassOrAny
internal class CliNoArgDeclarationChecker(
class CliNoArgDeclarationChecker(
private val noArgAnnotationFqNames: List<String>,
useIr: Boolean,
) : AbstractNoArgDeclarationChecker(useIr) {
+9 -2
View File
@@ -194,7 +194,11 @@ include ":kotlin-allopen-compiler-plugin",
":kotlin-allopen-compiler-plugin.k2"
include ":kotlin-noarg-compiler-plugin",
":kotlin-sam-with-receiver-compiler-plugin",
":kotlin-noarg-compiler-plugin.k1",
":kotlin-noarg-compiler-plugin.backend",
":kotlin-noarg-compiler-plugin.cli"
include ":kotlin-sam-with-receiver-compiler-plugin",
":kotlin-imports-dumper-compiler-plugin",
":kotlin-script-runtime",
":plugins:fir-plugin-prototype",
@@ -686,7 +690,10 @@ project(':kotlin-allopen-compiler-plugin').projectDir = "$rootDir/plugins/allope
project(':kotlin-allopen-compiler-plugin.cli').projectDir = "$rootDir/plugins/allopen/allopen.cli" as File
project(':kotlin-allopen-compiler-plugin.k1').projectDir = "$rootDir/plugins/allopen/allopen.k1" as File
project(':kotlin-allopen-compiler-plugin.k2').projectDir = "$rootDir/plugins/allopen/allopen.k2" as File
project(':kotlin-noarg-compiler-plugin').projectDir = "$rootDir/plugins/noarg/noarg-cli" as File
project(':kotlin-noarg-compiler-plugin').projectDir = "$rootDir/plugins/noarg" as File
project(':kotlin-noarg-compiler-plugin.k1').projectDir = "$rootDir/plugins/noarg/noarg.k1" as File
project(':kotlin-noarg-compiler-plugin.backend').projectDir = "$rootDir/plugins/noarg/noarg.backend" as File
project(':kotlin-noarg-compiler-plugin.cli').projectDir = "$rootDir/plugins/noarg/noarg.cli" as File
project(':kotlin-sam-with-receiver-compiler-plugin').projectDir = "$rootDir/plugins/sam-with-receiver/sam-with-receiver-cli" as File
project(':tools:kotlinp').projectDir = "$rootDir/libraries/tools/kotlinp" as File
project(':kotlin-project-model').projectDir = "$rootDir/libraries/tools/kotlin-project-model" as File