diff --git a/core/runtime.jvm/src/kotlin/Metadata.kt b/core/runtime.jvm/src/kotlin/Metadata.kt index 73fe493867a..51b715a25f8 100644 --- a/core/runtime.jvm/src/kotlin/Metadata.kt +++ b/core/runtime.jvm/src/kotlin/Metadata.kt @@ -63,5 +63,6 @@ internal annotation class Metadata( * 1 - this class file is compiled by a pre-release version of Kotlin and is not visible to release versions. * 2 - this class file is a compiled Kotlin script source file (.kts). */ + @SinceKotlin("1.1") val xi: Int = 0 ) diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/CallableReference.java b/core/runtime.jvm/src/kotlin/jvm/internal/CallableReference.java index 24fba0ade7f..2d6384dbb55 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/CallableReference.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/CallableReference.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.jvm.KotlinReflectionNotSupportedError; import kotlin.reflect.*; import org.jetbrains.annotations.NotNull; @@ -46,16 +47,19 @@ public abstract class CallableReference implements KCallable { this(NO_RECEIVER); } + @SinceKotlin(version = "1.1") protected CallableReference(Object receiver) { this.receiver = receiver; } protected abstract KCallable computeReflected(); + @SinceKotlin(version = "1.1") public Object getBoundReceiver() { return receiver; } + @SinceKotlin(version = "1.1") public KCallable compute() { KCallable result = reflected; if (result == null) { @@ -65,6 +69,7 @@ public abstract class CallableReference implements KCallable { return result; } + @SinceKotlin(version = "1.1") protected KCallable getReflected() { KCallable result = compute(); if (result == this) { @@ -123,6 +128,7 @@ public abstract class CallableReference implements KCallable { @NotNull @Override + @SinceKotlin(version = "1.1") public List getTypeParameters() { return getReflected().getTypeParameters(); } @@ -139,21 +145,25 @@ public abstract class CallableReference implements KCallable { @Nullable @Override + @SinceKotlin(version = "1.1") public KVisibility getVisibility() { return getReflected().getVisibility(); } @Override + @SinceKotlin(version = "1.1") public boolean isFinal() { return getReflected().isFinal(); } @Override + @SinceKotlin(version = "1.1") public boolean isOpen() { return getReflected().isOpen(); } @Override + @SinceKotlin(version = "1.1") public boolean isAbstract() { return getReflected().isAbstract(); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/ClassReference.kt b/core/runtime.jvm/src/kotlin/jvm/internal/ClassReference.kt index 24aa6b27efb..cc625c4b186 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/ClassReference.kt +++ b/core/runtime.jvm/src/kotlin/jvm/internal/ClassReference.kt @@ -40,35 +40,46 @@ public class ClassReference(override val jClass: Class<*>) : KClass, ClassB override val objectInstance: Any? get() = error() + @SinceKotlin("1.1") override fun isInstance(value: Any?): Boolean = error() + @SinceKotlin("1.1") override val typeParameters: List get() = error() + @SinceKotlin("1.1") override val supertypes: List get() = error() + @SinceKotlin("1.1") override val visibility: KVisibility? get() = error() + @SinceKotlin("1.1") override val isFinal: Boolean get() = error() + @SinceKotlin("1.1") override val isOpen: Boolean get() = error() + @SinceKotlin("1.1") override val isAbstract: Boolean get() = error() + @SinceKotlin("1.1") override val isSealed: Boolean get() = error() + @SinceKotlin("1.1") override val isData: Boolean get() = error() + @SinceKotlin("1.1") override val isInner: Boolean get() = error() + @SinceKotlin("1.1") override val isCompanion: Boolean get() = error() diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/FunctionReference.java b/core/runtime.jvm/src/kotlin/jvm/internal/FunctionReference.java index d0f0d306f43..71acab1e7f8 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/FunctionReference.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/FunctionReference.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.KCallable; import kotlin.reflect.KFunction; @@ -26,6 +27,7 @@ public class FunctionReference extends CallableReference implements FunctionImpl this.arity = arity; } + @SinceKotlin(version = "1.1") public FunctionReference(int arity, Object receiver) { super(receiver); this.arity = arity; @@ -37,36 +39,43 @@ public class FunctionReference extends CallableReference implements FunctionImpl } @Override + @SinceKotlin(version = "1.1") protected KFunction getReflected() { return (KFunction) super.getReflected(); } @Override + @SinceKotlin(version = "1.1") protected KCallable computeReflected() { return Reflection.function(this); } @Override + @SinceKotlin(version = "1.1") public boolean isInline() { return getReflected().isInline(); } @Override + @SinceKotlin(version = "1.1") public boolean isExternal() { return getReflected().isExternal(); } @Override + @SinceKotlin(version = "1.1") public boolean isOperator() { return getReflected().isOperator(); } @Override + @SinceKotlin(version = "1.1") public boolean isInfix() { return getReflected().isInfix(); } @Override + @SinceKotlin(version = "1.1") public boolean isSuspend() { return getReflected().isSuspend(); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/Intrinsics.java b/core/runtime.jvm/src/kotlin/jvm/internal/Intrinsics.java index 27b7257bdbc..572c4525444 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/Intrinsics.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/Intrinsics.java @@ -17,6 +17,7 @@ package kotlin.jvm.internal; import kotlin.KotlinNullPointerException; +import kotlin.SinceKotlin; import kotlin.UninitializedPropertyAccessException; import java.util.Arrays; @@ -163,26 +164,32 @@ public class Intrinsics { return first == null ? second == null : first.equals(second); } + @SinceKotlin(version = "1.1") public static boolean areEqual(Double first, Double second) { return first == null ? second == null : second != null && first.doubleValue() == second.doubleValue(); } + @SinceKotlin(version = "1.1") public static boolean areEqual(Double first, double second) { return first != null && first.doubleValue() == second; } + @SinceKotlin(version = "1.1") public static boolean areEqual(double first, Double second) { return second != null && first == second.doubleValue(); } + @SinceKotlin(version = "1.1") public static boolean areEqual(Float first, Float second) { return first == null ? second == null : second != null && first.floatValue() == second.floatValue(); } + @SinceKotlin(version = "1.1") public static boolean areEqual(Float first, float second) { return first != null && first.floatValue() == second; } + @SinceKotlin(version = "1.1") public static boolean areEqual(float first, Float second) { return second != null && first == second.floatValue(); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference.java b/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference.java index f27be57cc36..7d887bf45b2 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference.java @@ -16,12 +16,14 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.KMutableProperty; public abstract class MutablePropertyReference extends PropertyReference implements KMutableProperty { public MutablePropertyReference() { } + @SinceKotlin(version = "1.1") public MutablePropertyReference(Object receiver) { super(receiver); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference0.java b/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference0.java index 22c454ee3b1..25f5430d57f 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference0.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference0.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.KCallable; import kotlin.reflect.KMutableProperty0; import kotlin.reflect.KProperty0; @@ -24,6 +25,7 @@ public abstract class MutablePropertyReference0 extends MutablePropertyReference public MutablePropertyReference0() { } + @SinceKotlin(version = "1.1") public MutablePropertyReference0(Object receiver) { super(receiver); } @@ -49,6 +51,7 @@ public abstract class MutablePropertyReference0 extends MutablePropertyReference } @Override + @SinceKotlin(version = "1.1") public Object getDelegate() { return ((KMutableProperty0) getReflected()).getDelegate(); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference1.java b/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference1.java index 8ffdd9652aa..4d4a3316890 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference1.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference1.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.KCallable; import kotlin.reflect.KMutableProperty1; import kotlin.reflect.KProperty1; @@ -24,6 +25,7 @@ public abstract class MutablePropertyReference1 extends MutablePropertyReference public MutablePropertyReference1() { } + @SinceKotlin(version = "1.1") public MutablePropertyReference1(Object receiver) { super(receiver); } @@ -49,6 +51,7 @@ public abstract class MutablePropertyReference1 extends MutablePropertyReference } @Override + @SinceKotlin(version = "1.1") public Object getDelegate(Object receiver) { return ((KMutableProperty1) getReflected()).getDelegate(receiver); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference2.java b/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference2.java index 54b0b0715db..fc79fd8f5f0 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference2.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/MutablePropertyReference2.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.KCallable; import kotlin.reflect.KMutableProperty2; import kotlin.reflect.KProperty2; @@ -42,6 +43,7 @@ public abstract class MutablePropertyReference2 extends MutablePropertyReference } @Override + @SinceKotlin(version = "1.1") public Object getDelegate(Object receiver1, Object receiver2) { return ((KMutableProperty2) getReflected()).getDelegate(receiver1, receiver2); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/PackageReference.kt b/core/runtime.jvm/src/kotlin/jvm/internal/PackageReference.kt index dd5f01434e4..826f339afe4 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/PackageReference.kt +++ b/core/runtime.jvm/src/kotlin/jvm/internal/PackageReference.kt @@ -18,7 +18,8 @@ package kotlin.jvm.internal import kotlin.reflect.KCallable -class PackageReference( +@SinceKotlin("1.1") +public class PackageReference( override val jClass: Class<*>, @Suppress("unused") private val moduleName: String ) : ClassBasedDeclarationContainer { diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference.java b/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference.java index 266494189db..25ecf168a3d 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.KCallable; import kotlin.reflect.KProperty; @@ -24,21 +25,25 @@ public abstract class PropertyReference extends CallableReference implements KPr super(); } + @SinceKotlin(version = "1.1") public PropertyReference(Object receiver) { super(receiver); } @Override + @SinceKotlin(version = "1.1") protected KProperty getReflected() { return (KProperty) super.getReflected(); } @Override + @SinceKotlin(version = "1.1") public boolean isLateinit() { return getReflected().isLateinit(); } @Override + @SinceKotlin(version = "1.1") public boolean isConst() { return getReflected().isConst(); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference0.java b/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference0.java index 1ce7789a792..660173116d1 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference0.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference0.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.KCallable; import kotlin.reflect.KProperty0; @@ -24,6 +25,7 @@ public abstract class PropertyReference0 extends PropertyReference implements KP super(); } + @SinceKotlin(version = "1.1") public PropertyReference0(Object receiver) { super(receiver); } @@ -44,6 +46,7 @@ public abstract class PropertyReference0 extends PropertyReference implements KP } @Override + @SinceKotlin(version = "1.1") public Object getDelegate() { return ((KProperty0) getReflected()).getDelegate(); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference1.java b/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference1.java index 6a30bb86552..269a6626887 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference1.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference1.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.KCallable; import kotlin.reflect.KProperty1; @@ -23,6 +24,7 @@ public abstract class PropertyReference1 extends PropertyReference implements KP public PropertyReference1() { } + @SinceKotlin(version = "1.1") public PropertyReference1(Object receiver) { super(receiver); } @@ -43,6 +45,7 @@ public abstract class PropertyReference1 extends PropertyReference implements KP } @Override + @SinceKotlin(version = "1.1") public Object getDelegate(Object receiver) { return ((KProperty1) getReflected()).getDelegate(receiver); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference2.java b/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference2.java index f9228daa468..134e3f7e9a4 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference2.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/PropertyReference2.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.KCallable; import kotlin.reflect.KProperty2; @@ -36,6 +37,7 @@ public abstract class PropertyReference2 extends PropertyReference implements KP } @Override + @SinceKotlin(version = "1.1") public Object getDelegate(Object receiver1, Object receiver2) { return ((KProperty2) getReflected()).getDelegate(receiver1, receiver2); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/Reflection.java b/core/runtime.jvm/src/kotlin/jvm/internal/Reflection.java index e8bd257e357..7a5b368b573 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/Reflection.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/Reflection.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.*; /** @@ -74,6 +75,7 @@ public class Reflection { return kClasses; } + @SinceKotlin(version = "1.1") public static String renderLambdaToString(Lambda lambda) { return factory.renderLambdaToString(lambda); } diff --git a/core/runtime.jvm/src/kotlin/jvm/internal/ReflectionFactory.java b/core/runtime.jvm/src/kotlin/jvm/internal/ReflectionFactory.java index 08c7724b8fe..771c1f9c01c 100644 --- a/core/runtime.jvm/src/kotlin/jvm/internal/ReflectionFactory.java +++ b/core/runtime.jvm/src/kotlin/jvm/internal/ReflectionFactory.java @@ -16,6 +16,7 @@ package kotlin.jvm.internal; +import kotlin.SinceKotlin; import kotlin.reflect.*; public class ReflectionFactory { @@ -41,6 +42,7 @@ public class ReflectionFactory { return new ClassReference(javaClass); } + @SinceKotlin(version = "1.1") public String renderLambdaToString(Lambda lambda) { String result = lambda.getClass().getGenericInterfaces()[0].toString(); return result.startsWith(KOTLIN_JVM_FUNCTIONS) ? result.substring(KOTLIN_JVM_FUNCTIONS.length()) : result;