Replace ReadOnly/Mutable usages in the compiler

Replace ones from org.jetbrains.kotlin package with new annotations from kotlin.annotations.jvm.
No need to copy them to compile kotlin-reflect anymore.
Then simplify reflect project more: no sources — no need to pack its direct output.
This commit is contained in:
Ilya Gorbunov
2017-12-05 17:30:29 +03:00
parent 1bfb75a51b
commit 2a598e0ac4
29 changed files with 31 additions and 42 deletions
+1
View File
@@ -7,6 +7,7 @@ plugins {
jvmTarget = "1.6"
dependencies {
compile(project(":kotlin-annotations-jvm"))
compile(project(":compiler:util"))
compile(project(":compiler:backend-common"))
compile(project(":compiler:frontend"))
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.codegen.context;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.codegen.*;
import org.jetbrains.kotlin.codegen.binding.MutableClosure;
import org.jetbrains.kotlin.codegen.state.GenerationState;
@@ -18,9 +18,9 @@ package org.jetbrains.kotlin.codegen.inline;
import com.google.common.base.Objects;
import com.google.common.collect.Lists;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.annotations.TestOnly;
import org.jetbrains.org.objectweb.asm.Label;
import org.jetbrains.org.objectweb.asm.Opcodes;
+1
View File
@@ -7,6 +7,7 @@ plugins {
jvmTarget = "1.6"
dependencies {
compile(project(":kotlin-annotations-jvm"))
compile(project(":core:descriptors"))
compile(project(":core:deserialization"))
compile(project(":compiler:util"))
@@ -16,9 +16,9 @@
package org.jetbrains.kotlin.descriptors;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.resolve.scopes.LexicalScope;
import java.util.Collection;
@@ -7,9 +7,9 @@ package org.jetbrains.kotlin.resolve;
import com.google.common.collect.ImmutableMap;
import com.intellij.psi.PsiElement;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.annotations.TestOnly;
import org.jetbrains.kotlin.cfg.LeakingThisDescriptor;
import org.jetbrains.kotlin.cfg.TailRecursionKind;
@@ -16,10 +16,10 @@
package org.jetbrains.kotlin.resolve;
import org.jetbrains.annotations.Mutable;
import kotlin.annotations.jvm.Mutable;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.descriptors.*;
import org.jetbrains.kotlin.psi.*;
import org.jetbrains.kotlin.resolve.calls.smartcasts.DataFlowInfo;
@@ -17,9 +17,9 @@
package org.jetbrains.kotlin.resolve.calls.util;
import com.intellij.lang.ASTNode;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.psi.*;
import org.jetbrains.kotlin.resolve.scopes.receivers.Receiver;
import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue;
@@ -19,10 +19,10 @@ package org.jetbrains.kotlin.resolve.lazy;
import com.google.common.collect.Lists;
import com.intellij.openapi.project.Project;
import com.intellij.util.containers.ContainerUtil;
import kotlin.annotations.jvm.ReadOnly;
import kotlin.jvm.functions.Function1;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.config.LanguageVersionSettings;
import org.jetbrains.kotlin.context.GlobalContext;
import org.jetbrains.kotlin.descriptors.*;
@@ -17,9 +17,9 @@
package org.jetbrains.kotlin.resolve.lazy.data;
import com.intellij.psi.PsiElement;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.descriptors.ClassKind;
import org.jetbrains.kotlin.name.FqName;
import org.jetbrains.kotlin.psi.*;
@@ -7,11 +7,11 @@ package org.jetbrains.kotlin.resolve.lazy.descriptors;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiNameIdentifierOwner;
import kotlin.annotations.jvm.ReadOnly;
import kotlin.collections.CollectionsKt;
import kotlin.jvm.functions.Function1;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.builtins.KotlinBuiltIns;
import org.jetbrains.kotlin.config.LanguageFeature;
import org.jetbrains.kotlin.descriptors.*;
@@ -17,9 +17,9 @@
package org.jetbrains.kotlin.psi;
import com.intellij.lang.ASTNode;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.lexer.KtTokens;
import org.jetbrains.kotlin.resolve.scopes.receivers.Receiver;
import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue;
@@ -20,9 +20,9 @@ import com.intellij.lang.ASTNode;
import com.intellij.openapi.util.TextRange;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiModifiableCodeBlock;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.lexer.KtTokens;
import java.util.Arrays;
@@ -16,8 +16,8 @@
package org.jetbrains.kotlin.psi;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.ReadOnly;
import java.util.List;
@@ -16,9 +16,9 @@
package org.jetbrains.kotlin.psi;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import java.util.List;
+1
View File
@@ -7,6 +7,7 @@ jvmTarget = "1.6"
javaHome = rootProject.extra["JDK_16"] as String
dependencies {
compile(project(":kotlin-annotations-jvm"))
compile(project(":core:descriptors"))
compile(project(":core:deserialization"))
compile(project(":core:metadata.jvm"))
@@ -16,9 +16,9 @@
package org.jetbrains.kotlin.load.java;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.load.java.structure.JavaClass;
import org.jetbrains.kotlin.load.java.structure.JavaPackage;
import org.jetbrains.kotlin.name.ClassId;
+1
View File
@@ -9,6 +9,7 @@ javaHome = rootProject.extra["JDK_16"] as String
dependencies {
compile(project(":core:util.runtime"))
compile(projectDist(":kotlin-stdlib"))
compile(project(":kotlin-annotations-jvm"))
}
sourceSets {
@@ -16,9 +16,9 @@
package org.jetbrains.kotlin.descriptors;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.types.KotlinType;
import java.util.Collection;
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.descriptors;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.resolve.scopes.MemberScope;
import org.jetbrains.kotlin.types.SimpleType;
import org.jetbrains.kotlin.types.TypeProjection;
@@ -16,8 +16,8 @@
package org.jetbrains.kotlin.descriptors;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.ReadOnly;
import java.util.List;
@@ -16,9 +16,9 @@
package org.jetbrains.kotlin.descriptors.impl;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.descriptors.*;
import org.jetbrains.kotlin.descriptors.annotations.Annotations;
import org.jetbrains.kotlin.name.Name;
@@ -18,10 +18,10 @@ package org.jetbrains.kotlin.resolve;
import kotlin.Pair;
import kotlin.Unit;
import kotlin.annotations.jvm.Mutable;
import kotlin.collections.CollectionsKt;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.functions.Function2;
import org.jetbrains.annotations.Mutable;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.kotlin.descriptors.*;
@@ -16,10 +16,10 @@
package org.jetbrains.kotlin.types;
import org.jetbrains.annotations.Mutable;
import kotlin.annotations.jvm.Mutable;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor;
import org.jetbrains.kotlin.descriptors.SourceElement;
import org.jetbrains.kotlin.descriptors.TypeParameterDescriptor;
@@ -16,9 +16,9 @@
package org.jetbrains.kotlin.types;
import kotlin.annotations.jvm.ReadOnly;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ReadOnly;
import org.jetbrains.kotlin.builtins.KotlinBuiltIns;
import org.jetbrains.kotlin.descriptors.ClassifierDescriptor;
import org.jetbrains.kotlin.descriptors.TypeParameterDescriptor;
+1 -19
View File
@@ -34,15 +34,9 @@ pill {
}
val core = "$rootDir/core"
val annotationsSrc = "$buildDir/annotations"
val relocatedCoreSrc = "$buildDir/core-relocated"
val libsDir = property("libsDir")
sourceSets {
"main" {
java.srcDir(annotationsSrc)
}
}
val proguardDeps by configurations.creating
val shadows by configurations.creating {
@@ -55,6 +49,7 @@ dependencies {
compile(projectDist(":kotlin-stdlib"))
proguardDeps(project(":kotlin-stdlib"))
proguardDeps(project(":kotlin-annotations-jvm"))
proguardDeps(files(firstFromJavaHomeThatExists("jre/lib/rt.jar", "../Classes/classes.jar", jdkHome = File(property("JDK_16") as String))))
shadows(project(":kotlin-reflect-api"))
@@ -69,18 +64,6 @@ dependencies {
shadows(project(":custom-dependencies:protobuf-lite", configuration = "default"))
}
val copyAnnotations by task<Sync> {
// copy just two missing annotations
from("$core/runtime.jvm/src") {
include("**/Mutable.java")
include("**/ReadOnly.java")
}
into(annotationsSrc)
includeEmptyDirs = false
}
tasks.getByName("compileJava").dependsOn(copyAnnotations)
class KotlinModuleShadowTransformer(private val logger: Logger) : Transformer {
@Suppress("ArrayInDataClass")
private data class Entry(val path: String, val bytes: ByteArray)
@@ -127,7 +110,6 @@ val reflectShadowJar by task<ShadowJar> {
version = null
callGroovy("manifestAttributes", manifest, project, "Main", true)
from(mainSourceSet.output)
from(project(":core:descriptors.jvm").mainSourceSet.resources) {
include("META-INF/services/**")
}
+1
View File
@@ -63,6 +63,7 @@ dependencies {
proguardLibraryJars(projectDist(":kotlin-stdlib"))
proguardLibraryJars(projectDist(":kotlin-script-runtime"))
proguardLibraryJars(projectDist(":kotlin-reflect"))
proguardLibraryJars(project(":kotlin-annotations-jvm"))
proguardLibraryJars(projectDist(":kotlin-scripting-common"))
proguardLibraryJars(projectDist(":kotlin-scripting-jvm"))
+1
View File
@@ -63,6 +63,7 @@ dependencies {
proguardLibraryJars(projectDist(":kotlin-stdlib"))
proguardLibraryJars(projectDist(":kotlin-script-runtime"))
proguardLibraryJars(projectDist(":kotlin-reflect"))
proguardLibraryJars(project(":kotlin-annotations-jvm"))
proguardLibraryJars(projectDist(":kotlin-scripting-common"))
proguardLibraryJars(projectDist(":kotlin-scripting-jvm"))
+1
View File
@@ -63,6 +63,7 @@ dependencies {
proguardLibraryJars(projectDist(":kotlin-stdlib"))
proguardLibraryJars(projectDist(":kotlin-script-runtime"))
proguardLibraryJars(projectDist(":kotlin-reflect"))
proguardLibraryJars(project(":kotlin-annotations-jvm"))
proguardLibraryJars(projectDist(":kotlin-scripting-common"))
proguardLibraryJars(projectDist(":kotlin-scripting-jvm"))