diff --git a/libraries/stdlib/api/js-v1/kotlin.kt b/libraries/stdlib/api/js-v1/kotlin.kt index 9d77e353f5b..27f048496e9 100644 --- a/libraries/stdlib/api/js-v1/kotlin.kt +++ b/libraries/stdlib/api/js-v1/kotlin.kt @@ -937,25 +937,25 @@ public interface AutoCloseable { } public final class Boolean : kotlin.Comparable { -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final infix fun and(other: kotlin.Boolean): kotlin.Boolean -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun compareTo(other: kotlin.Boolean): kotlin.Int -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun equals(other: kotlin.Any?): kotlin.Boolean -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun not(): kotlin.Boolean -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final infix fun or(other: kotlin.Boolean): kotlin.Boolean -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toString(): kotlin.String -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final infix fun xor(other: kotlin.Boolean): kotlin.Boolean @kotlin.SinceKotlin(version = "1.3") @@ -1191,23 +1191,23 @@ public final class ByteArray { } public final class Char : kotlin.Comparable { -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun compareTo(other: kotlin.Char): kotlin.Int public final operator fun dec(): kotlin.Char -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun equals(other: kotlin.Any?): kotlin.Boolean public final operator fun inc(): kotlin.Char -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun minus(other: kotlin.Char): kotlin.Int -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun minus(other: kotlin.Int): kotlin.Char -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun plus(other: kotlin.Int): kotlin.Char public final operator fun rangeTo(other: kotlin.Char): kotlin.ranges.CharRange @@ -1218,38 +1218,38 @@ public final class Char : kotlin.Comparable { @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code.toByte()", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final fun toByte(): kotlin.Byte -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final fun toChar(): kotlin.Char @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code.toDouble()", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final fun toDouble(): kotlin.Double @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code.toFloat()", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final fun toFloat(): kotlin.Float @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final fun toInt(): kotlin.Int @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code.toLong()", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final fun toLong(): kotlin.Long @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code.toShort()", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final fun toShort(): kotlin.Short -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toString(): kotlin.String public companion object of Char { @@ -1598,7 +1598,7 @@ public final annotation class DslMarker : kotlin.Annotation { public abstract class Enum> : kotlin.Comparable { public constructor Enum>(name: kotlin.String, ordinal: kotlin.Int) -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final val name: kotlin.String { get; } public final val ordinal: kotlin.Int { get; } @@ -2184,92 +2184,92 @@ public final enum class LazyThreadSafetyMode : kotlin.Enum { -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final infix fun and(other: kotlin.Long): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun compareTo(other: kotlin.Byte): kotlin.Int -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun compareTo(other: kotlin.Double): kotlin.Int -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun compareTo(other: kotlin.Float): kotlin.Int -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun compareTo(other: kotlin.Int): kotlin.Int -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun compareTo(other: kotlin.Long): kotlin.Int -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun compareTo(other: kotlin.Short): kotlin.Int public final operator fun dec(): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun div(other: kotlin.Byte): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun div(other: kotlin.Double): kotlin.Double -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun div(other: kotlin.Float): kotlin.Float -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun div(other: kotlin.Int): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun div(other: kotlin.Long): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun div(other: kotlin.Short): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun equals(other: kotlin.Any?): kotlin.Boolean public final operator fun inc(): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final fun inv(): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun minus(other: kotlin.Byte): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun minus(other: kotlin.Double): kotlin.Double -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun minus(other: kotlin.Float): kotlin.Float -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun minus(other: kotlin.Int): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun minus(other: kotlin.Long): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun minus(other: kotlin.Short): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final infix fun or(other: kotlin.Long): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun plus(other: kotlin.Byte): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun plus(other: kotlin.Double): kotlin.Double -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun plus(other: kotlin.Float): kotlin.Float -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun plus(other: kotlin.Int): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun plus(other: kotlin.Long): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun plus(other: kotlin.Short): kotlin.Long public final operator fun rangeTo(other: kotlin.Byte): kotlin.ranges.LongRange @@ -2297,89 +2297,89 @@ public final class Long : kotlin.Number, kotlin.Comparable { public final operator fun rangeUntil(other: kotlin.Short): kotlin.ranges.LongRange @kotlin.SinceKotlin(version = "1.1") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun rem(other: kotlin.Byte): kotlin.Long @kotlin.SinceKotlin(version = "1.1") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun rem(other: kotlin.Double): kotlin.Double @kotlin.SinceKotlin(version = "1.1") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun rem(other: kotlin.Float): kotlin.Float @kotlin.SinceKotlin(version = "1.1") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun rem(other: kotlin.Int): kotlin.Long @kotlin.SinceKotlin(version = "1.1") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun rem(other: kotlin.Long): kotlin.Long @kotlin.SinceKotlin(version = "1.1") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun rem(other: kotlin.Short): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final infix fun shl(bitCount: kotlin.Int): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final infix fun shr(bitCount: kotlin.Int): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun times(other: kotlin.Byte): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun times(other: kotlin.Double): kotlin.Double -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun times(other: kotlin.Float): kotlin.Float -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun times(other: kotlin.Int): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun times(other: kotlin.Long): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun times(other: kotlin.Short): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toByte(): kotlin.Byte @kotlin.Deprecated(message = "Direct conversion to Char is deprecated. Use toInt().toChar() or Char constructor instead.", replaceWith = kotlin.ReplaceWith(expression = "this.toInt().toChar()", imports = {})) @kotlin.DeprecatedSinceKotlin(errorSince = "2.3", warningSince = "1.5") -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toChar(): kotlin.Char -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toDouble(): kotlin.Double -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toFloat(): kotlin.Float -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toInt(): kotlin.Int -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toLong(): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toShort(): kotlin.Short -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toString(): kotlin.String -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun unaryMinus(): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final operator fun unaryPlus(): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final infix fun ushr(bitCount: kotlin.Int): kotlin.Long -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final infix fun xor(other: kotlin.Long): kotlin.Long public companion object of Long { @@ -2837,24 +2837,24 @@ public final annotation class SinceKotlin : kotlin.Annotation { public final class String : kotlin.Comparable, kotlin.CharSequence { public constructor String() -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override val length: kotlin.Int { get; } -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun compareTo(other: kotlin.String): kotlin.Int -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun equals(other: kotlin.Any?): kotlin.Boolean -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun get(index: kotlin.Int): kotlin.Char -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public final operator fun plus(other: kotlin.Any?): kotlin.String public open override fun subSequence(startIndex: kotlin.Int, endIndex: kotlin.Int): kotlin.CharSequence -/*∆*/ @kotlin.internal.IntrinsicConstEvaluation + @kotlin.internal.IntrinsicConstEvaluation public open override fun toString(): kotlin.String public companion object of String { diff --git a/libraries/stdlib/api/js-v1/kotlin.reflect.kt b/libraries/stdlib/api/js-v1/kotlin.reflect.kt index e98f62df63b..531a3532fb5 100644 --- a/libraries/stdlib/api/js-v1/kotlin.reflect.kt +++ b/libraries/stdlib/api/js-v1/kotlin.reflect.kt @@ -29,6 +29,7 @@ public final annotation class ExperimentalAssociatedObjects : kotlin.Annotation } public interface KCallable { + @kotlin.internal.IntrinsicConstEvaluation public abstract val name: kotlin.String { get; } } diff --git a/libraries/stdlib/api/js/kotlin.kt b/libraries/stdlib/api/js/kotlin.kt index 94987455362..912008eee49 100644 --- a/libraries/stdlib/api/js/kotlin.kt +++ b/libraries/stdlib/api/js/kotlin.kt @@ -894,20 +894,27 @@ public interface AutoCloseable { } public final class Boolean : kotlin.Comparable { + @kotlin.internal.IntrinsicConstEvaluation public final infix fun and(other: kotlin.Boolean): kotlin.Boolean + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun compareTo(other: kotlin.Boolean): kotlin.Int + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun equals(other: kotlin.Any?): kotlin.Boolean /*∆*/ public open override fun hashCode(): kotlin.Int /*∆*/ + @kotlin.internal.IntrinsicConstEvaluation public final operator fun not(): kotlin.Boolean + @kotlin.internal.IntrinsicConstEvaluation public final infix fun or(other: kotlin.Boolean): kotlin.Boolean + @kotlin.internal.IntrinsicConstEvaluation public open override fun toString(): kotlin.String + @kotlin.internal.IntrinsicConstEvaluation public final infix fun xor(other: kotlin.Boolean): kotlin.Boolean @kotlin.SinceKotlin(version = "1.3") @@ -1149,20 +1156,25 @@ public final class Char : kotlin.Comparable { /*∆*/ @kotlin.WasExperimental(markerClass = {kotlin.ExperimentalStdlibApi::class}) /*∆*/ public constructor Char(code: kotlin.UShort) /*∆*/ + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun compareTo(other: kotlin.Char): kotlin.Int public final operator fun dec(): kotlin.Char + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun equals(other: kotlin.Any?): kotlin.Boolean /*∆*/ public open override fun hashCode(): kotlin.Int /*∆*/ public final operator fun inc(): kotlin.Char + @kotlin.internal.IntrinsicConstEvaluation public final operator fun minus(other: kotlin.Char): kotlin.Int + @kotlin.internal.IntrinsicConstEvaluation public final operator fun minus(other: kotlin.Int): kotlin.Char + @kotlin.internal.IntrinsicConstEvaluation public final operator fun plus(other: kotlin.Int): kotlin.Char public final operator fun rangeTo(other: kotlin.Char): kotlin.ranges.CharRange @@ -1173,31 +1185,39 @@ public final class Char : kotlin.Comparable { @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code.toByte()", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public final fun toByte(): kotlin.Byte + @kotlin.internal.IntrinsicConstEvaluation public final fun toChar(): kotlin.Char @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code.toDouble()", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public final fun toDouble(): kotlin.Double @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code.toFloat()", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public final fun toFloat(): kotlin.Float @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public final fun toInt(): kotlin.Int @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code.toLong()", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public final fun toLong(): kotlin.Long @kotlin.Deprecated(message = "Conversion of Char to Number is deprecated. Use Char.code property instead.", replaceWith = kotlin.ReplaceWith(expression = "this.code.toShort()", imports = {})) @kotlin.DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public final fun toShort(): kotlin.Short /*∆*/ @kotlin.js.JsName(name = "toString") + @kotlin.internal.IntrinsicConstEvaluation public open override fun toString(): kotlin.String public companion object of Char { @@ -1540,6 +1560,7 @@ public final annotation class DslMarker : kotlin.Annotation { public abstract class Enum> : kotlin.Comparable { public constructor Enum>(name: kotlin.String, ordinal: kotlin.Int) + @kotlin.internal.IntrinsicConstEvaluation public final val name: kotlin.String { get; } public final val ordinal: kotlin.Int { get; } @@ -2109,66 +2130,94 @@ public final enum class LazyThreadSafetyMode : kotlin.Enum { + @kotlin.internal.IntrinsicConstEvaluation public final infix fun and(other: kotlin.Long): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun compareTo(other: kotlin.Byte): kotlin.Int + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun compareTo(other: kotlin.Double): kotlin.Int + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun compareTo(other: kotlin.Float): kotlin.Int + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun compareTo(other: kotlin.Int): kotlin.Int + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun compareTo(other: kotlin.Long): kotlin.Int + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun compareTo(other: kotlin.Short): kotlin.Int public final operator fun dec(): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun div(other: kotlin.Byte): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun div(other: kotlin.Double): kotlin.Double + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun div(other: kotlin.Float): kotlin.Float + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun div(other: kotlin.Int): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public final operator fun div(other: kotlin.Long): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun div(other: kotlin.Short): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun equals(other: kotlin.Any?): kotlin.Boolean /*∆*/ public open override fun hashCode(): kotlin.Int /*∆*/ public final operator fun inc(): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public final fun inv(): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun minus(other: kotlin.Byte): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun minus(other: kotlin.Double): kotlin.Double + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun minus(other: kotlin.Float): kotlin.Float + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun minus(other: kotlin.Int): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public final operator fun minus(other: kotlin.Long): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun minus(other: kotlin.Short): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public final infix fun or(other: kotlin.Long): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun plus(other: kotlin.Byte): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun plus(other: kotlin.Double): kotlin.Double + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun plus(other: kotlin.Float): kotlin.Float + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun plus(other: kotlin.Int): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public final operator fun plus(other: kotlin.Long): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun plus(other: kotlin.Short): kotlin.Long public final operator fun rangeTo(other: kotlin.Byte): kotlin.ranges.LongRange @@ -2196,63 +2245,89 @@ public final class Long : kotlin.Number, kotlin.Comparable { public final operator fun rangeUntil(other: kotlin.Short): kotlin.ranges.LongRange @kotlin.SinceKotlin(version = "1.1") + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun rem(other: kotlin.Byte): kotlin.Long @kotlin.SinceKotlin(version = "1.1") + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun rem(other: kotlin.Double): kotlin.Double @kotlin.SinceKotlin(version = "1.1") + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun rem(other: kotlin.Float): kotlin.Float @kotlin.SinceKotlin(version = "1.1") + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun rem(other: kotlin.Int): kotlin.Long @kotlin.SinceKotlin(version = "1.1") + @kotlin.internal.IntrinsicConstEvaluation public final operator fun rem(other: kotlin.Long): kotlin.Long @kotlin.SinceKotlin(version = "1.1") + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun rem(other: kotlin.Short): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public final infix fun shl(bitCount: kotlin.Int): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public final infix fun shr(bitCount: kotlin.Int): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun times(other: kotlin.Byte): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun times(other: kotlin.Double): kotlin.Double + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun times(other: kotlin.Float): kotlin.Float + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun times(other: kotlin.Int): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public final operator fun times(other: kotlin.Long): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun times(other: kotlin.Short): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public open override fun toByte(): kotlin.Byte @kotlin.Deprecated(message = "Direct conversion to Char is deprecated. Use toInt().toChar() or Char constructor instead.", replaceWith = kotlin.ReplaceWith(expression = "this.toInt().toChar()", imports = {})) @kotlin.DeprecatedSinceKotlin(errorSince = "2.3", warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public open override fun toChar(): kotlin.Char + @kotlin.internal.IntrinsicConstEvaluation public open override fun toDouble(): kotlin.Double + @kotlin.internal.IntrinsicConstEvaluation public open override fun toFloat(): kotlin.Float + @kotlin.internal.IntrinsicConstEvaluation public open override fun toInt(): kotlin.Int + @kotlin.internal.IntrinsicConstEvaluation public open override fun toLong(): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public open override fun toShort(): kotlin.Short + @kotlin.internal.IntrinsicConstEvaluation public open override fun toString(): kotlin.String + @kotlin.internal.IntrinsicConstEvaluation public final operator fun unaryMinus(): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation /*∆*/ public final inline operator fun unaryPlus(): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public final infix fun ushr(bitCount: kotlin.Int): kotlin.Long + @kotlin.internal.IntrinsicConstEvaluation public final infix fun xor(other: kotlin.Long): kotlin.Long public companion object of Long { @@ -2686,20 +2761,26 @@ public final annotation class SinceKotlin : kotlin.Annotation { public final class String : kotlin.Comparable, kotlin.CharSequence { public constructor String() + @kotlin.internal.IntrinsicConstEvaluation public open override val length: kotlin.Int { get; } + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun compareTo(other: kotlin.String): kotlin.Int + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun equals(other: kotlin.Any?): kotlin.Boolean + @kotlin.internal.IntrinsicConstEvaluation public open override operator fun get(index: kotlin.Int): kotlin.Char /*∆*/ public open override fun hashCode(): kotlin.Int /*∆*/ + @kotlin.internal.IntrinsicConstEvaluation public final operator fun plus(other: kotlin.Any?): kotlin.String public open override fun subSequence(startIndex: kotlin.Int, endIndex: kotlin.Int): kotlin.CharSequence + @kotlin.internal.IntrinsicConstEvaluation public open override fun toString(): kotlin.String public companion object of String { diff --git a/libraries/stdlib/api/js/kotlin.reflect.kt b/libraries/stdlib/api/js/kotlin.reflect.kt index 922bc18b3e8..7d7e69b14af 100644 --- a/libraries/stdlib/api/js/kotlin.reflect.kt +++ b/libraries/stdlib/api/js/kotlin.reflect.kt @@ -29,6 +29,7 @@ public final annotation class ExperimentalAssociatedObjects : kotlin.Annotation } public interface KCallable { + @kotlin.internal.IntrinsicConstEvaluation public abstract val name: kotlin.String { get; } } diff --git a/libraries/stdlib/js-ir/builtins/Boolean.kt b/libraries/stdlib/js-ir/builtins/Boolean.kt index aab0b3c7443..e67847e99cb 100644 --- a/libraries/stdlib/js-ir/builtins/Boolean.kt +++ b/libraries/stdlib/js-ir/builtins/Boolean.kt @@ -15,32 +15,39 @@ public class Boolean private constructor() : Comparable { /** * Returns the inverse of this boolean. */ + @kotlin.internal.IntrinsicConstEvaluation public operator fun not(): Boolean /** * Performs a logical `and` operation between this Boolean and the [other] one. Unlike the `&&` operator, * this function does not perform short-circuit evaluation. Both `this` and [other] will always be evaluated. */ + @kotlin.internal.IntrinsicConstEvaluation public infix fun and(other: Boolean): Boolean /** * Performs a logical `or` operation between this Boolean and the [other] one. Unlike the `||` operator, * this function does not perform short-circuit evaluation. Both `this` and [other] will always be evaluated. */ + @kotlin.internal.IntrinsicConstEvaluation public infix fun or(other: Boolean): Boolean /** * Performs a logical `xor` operation between this Boolean and the [other] one. */ + @kotlin.internal.IntrinsicConstEvaluation public infix fun xor(other: Boolean): Boolean + @kotlin.internal.IntrinsicConstEvaluation public override fun compareTo(other: Boolean): Int + @kotlin.internal.IntrinsicConstEvaluation public override fun equals(other: Any?): Boolean public override fun hashCode(): Int + @kotlin.internal.IntrinsicConstEvaluation public override fun toString(): String @SinceKotlin("1.3") diff --git a/libraries/stdlib/js-ir/builtins/Char.kt b/libraries/stdlib/js-ir/builtins/Char.kt index 2e9c6ed3644..1d5c3354522 100644 --- a/libraries/stdlib/js-ir/builtins/Char.kt +++ b/libraries/stdlib/js-ir/builtins/Char.kt @@ -26,14 +26,18 @@ internal constructor(private val value: Int) : Comparable { * Returns zero if this value is equal to the specified other value, a negative number if it's less than other, * or a positive number if it's greater than other. */ + @kotlin.internal.IntrinsicConstEvaluation public override fun compareTo(other: Char): Int = value - other.value /** Adds the other Int value to this value resulting a Char. */ + @kotlin.internal.IntrinsicConstEvaluation public operator fun plus(other: Int): Char = (value + other).toChar() /** Subtracts the other Char value from this value resulting an Int. */ + @kotlin.internal.IntrinsicConstEvaluation public operator fun minus(other: Char): Int = value - other.value /** Subtracts the other Int value from this value resulting a Char. */ + @kotlin.internal.IntrinsicConstEvaluation public operator fun minus(other: Int): Char = (value - other).toChar() /** @@ -66,30 +70,38 @@ internal constructor(private val value: Int) : Comparable { /** Returns the value of this character as a `Byte`. */ @Deprecated("Conversion of Char to Number is deprecated. Use Char.code property instead.", ReplaceWith("this.code.toByte()")) @DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public fun toByte(): Byte = value.toByte() /** Returns the value of this character as a `Char`. */ + @kotlin.internal.IntrinsicConstEvaluation public fun toChar(): Char = this /** Returns the value of this character as a `Short`. */ @Deprecated("Conversion of Char to Number is deprecated. Use Char.code property instead.", ReplaceWith("this.code.toShort()")) @DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public fun toShort(): Short = value.toShort() /** Returns the value of this character as a `Int`. */ @Deprecated("Conversion of Char to Number is deprecated. Use Char.code property instead.", ReplaceWith("this.code")) @DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public fun toInt(): Int = value /** Returns the value of this character as a `Long`. */ @Deprecated("Conversion of Char to Number is deprecated. Use Char.code property instead.", ReplaceWith("this.code.toLong()")) @DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public fun toLong(): Long = value.toLong() /** Returns the value of this character as a `Float`. */ @Deprecated("Conversion of Char to Number is deprecated. Use Char.code property instead.", ReplaceWith("this.code.toFloat()")) @DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public fun toFloat(): Float = value.toFloat() /** Returns the value of this character as a `Double`. */ @Deprecated("Conversion of Char to Number is deprecated. Use Char.code property instead.", ReplaceWith("this.code.toDouble()")) @DeprecatedSinceKotlin(warningSince = "1.5") + @kotlin.internal.IntrinsicConstEvaluation public fun toDouble(): Double = value.toDouble() + @kotlin.internal.IntrinsicConstEvaluation override fun equals(other: Any?): Boolean { if (other !is Char) return false return this.value == other.value @@ -100,6 +112,7 @@ internal constructor(private val value: Int) : Comparable { // TODO implicit usages of toString and valueOf must be covered in DCE @Suppress("JS_NAME_PROHIBITED_FOR_OVERRIDE") @JsName("toString") + @kotlin.internal.IntrinsicConstEvaluation public override fun toString(): String { return js("String").fromCharCode(value).unsafeCast() } diff --git a/libraries/stdlib/js-ir/builtins/Enum.kt b/libraries/stdlib/js-ir/builtins/Enum.kt index ad56e34db7e..4741b7cf499 100644 --- a/libraries/stdlib/js-ir/builtins/Enum.kt +++ b/libraries/stdlib/js-ir/builtins/Enum.kt @@ -7,7 +7,7 @@ package kotlin import kotlin.js.* -abstract class Enum>(val name: String, val ordinal: Int) : Comparable { +abstract class Enum>(@kotlin.internal.IntrinsicConstEvaluation val name: String, val ordinal: Int) : Comparable { final override fun compareTo(other: E) = ordinal.compareTo(other.ordinal) diff --git a/libraries/stdlib/js-ir/builtins/String.kt b/libraries/stdlib/js-ir/builtins/String.kt index 465c73111ec..46249fa0fa9 100644 --- a/libraries/stdlib/js-ir/builtins/String.kt +++ b/libraries/stdlib/js-ir/builtins/String.kt @@ -17,8 +17,10 @@ public class String : Comparable, CharSequence { /** * Returns a string obtained by concatenating this string with the string representation of the given [other] object. */ + @kotlin.internal.IntrinsicConstEvaluation public operator fun plus(other: Any?): String + @kotlin.internal.IntrinsicConstEvaluation public override val length: Int /** @@ -27,15 +29,19 @@ public class String : Comparable, CharSequence { * If the [index] is out of bounds of this string, throws an [IndexOutOfBoundsException] except in Kotlin/JS * where the behavior is unspecified. */ + @kotlin.internal.IntrinsicConstEvaluation public override fun get(index: Int): Char public override fun subSequence(startIndex: Int, endIndex: Int): CharSequence + @kotlin.internal.IntrinsicConstEvaluation public override fun compareTo(other: String): Int + @kotlin.internal.IntrinsicConstEvaluation public override fun equals(other: Any?): Boolean public override fun hashCode(): Int + @kotlin.internal.IntrinsicConstEvaluation public override fun toString(): String } diff --git a/libraries/stdlib/js-ir/runtime/long.kt b/libraries/stdlib/js-ir/runtime/long.kt index bf951788cd9..367f8786db0 100644 --- a/libraries/stdlib/js-ir/runtime/long.kt +++ b/libraries/stdlib/js-ir/runtime/long.kt @@ -44,6 +44,7 @@ public class Long internal constructor( * Returns zero if this value is equal to the specified other value, a negative number if it's less than other, * or a positive number if it's greater than other. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun compareTo(other: Byte): Int = compareTo(other.toLong()) /** @@ -51,6 +52,7 @@ public class Long internal constructor( * Returns zero if this value is equal to the specified other value, a negative number if it's less than other, * or a positive number if it's greater than other. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun compareTo(other: Short): Int = compareTo(other.toLong()) /** @@ -58,6 +60,7 @@ public class Long internal constructor( * Returns zero if this value is equal to the specified other value, a negative number if it's less than other, * or a positive number if it's greater than other. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun compareTo(other: Int): Int = compareTo(other.toLong()) /** @@ -65,6 +68,7 @@ public class Long internal constructor( * Returns zero if this value is equal to the specified other value, a negative number if it's less than other, * or a positive number if it's greater than other. */ + @kotlin.internal.IntrinsicConstEvaluation public override operator fun compareTo(other: Long): Int = compare(other) /** @@ -72,6 +76,7 @@ public class Long internal constructor( * Returns zero if this value is equal to the specified other value, a negative number if it's less than other, * or a positive number if it's greater than other. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun compareTo(other: Float): Int = toFloat().compareTo(other) /** @@ -79,78 +84,103 @@ public class Long internal constructor( * Returns zero if this value is equal to the specified other value, a negative number if it's less than other, * or a positive number if it's greater than other. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun compareTo(other: Double): Int = toDouble().compareTo(other) /** Adds the other value to this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun plus(other: Byte): Long = plus(other.toLong()) /** Adds the other value to this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun plus(other: Short): Long = plus(other.toLong()) /** Adds the other value to this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun plus(other: Int): Long = plus(other.toLong()) /** Adds the other value to this value. */ + @kotlin.internal.IntrinsicConstEvaluation public operator fun plus(other: Long): Long = add(other) /** Adds the other value to this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun plus(other: Float): Float = toFloat() + other /** Adds the other value to this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun plus(other: Double): Double = toDouble() + other /** Subtracts the other value from this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun minus(other: Byte): Long = minus(other.toLong()) /** Subtracts the other value from this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun minus(other: Short): Long = minus(other.toLong()) /** Subtracts the other value from this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun minus(other: Int): Long = minus(other.toLong()) /** Subtracts the other value from this value. */ + @kotlin.internal.IntrinsicConstEvaluation public operator fun minus(other: Long): Long = subtract(other) /** Subtracts the other value from this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun minus(other: Float): Float = toFloat() - other /** Subtracts the other value from this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun minus(other: Double): Double = toDouble() - other /** Multiplies this value by the other value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun times(other: Byte): Long = times(other.toLong()) /** Multiplies this value by the other value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun times(other: Short): Long = times(other.toLong()) /** Multiplies this value by the other value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun times(other: Int): Long = times(other.toLong()) /** Multiplies this value by the other value. */ + @kotlin.internal.IntrinsicConstEvaluation public operator fun times(other: Long): Long = multiply(other) /** Multiplies this value by the other value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun times(other: Float): Float = toFloat() * other /** Multiplies this value by the other value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun times(other: Double): Double = toDouble() * other /** Divides this value by the other value, truncating the result to an integer that is closer to zero. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun div(other: Byte): Long = div(other.toLong()) /** Divides this value by the other value, truncating the result to an integer that is closer to zero. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun div(other: Short): Long = div(other.toLong()) /** Divides this value by the other value, truncating the result to an integer that is closer to zero. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun div(other: Int): Long = div(other.toLong()) /** Divides this value by the other value, truncating the result to an integer that is closer to zero. */ + @kotlin.internal.IntrinsicConstEvaluation public operator fun div(other: Long): Long = divide(other) /** Divides this value by the other value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun div(other: Float): Float = toFloat() / other /** Divides this value by the other value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun div(other: Double): Double = toDouble() / other /** @@ -159,6 +189,7 @@ public class Long internal constructor( * The result is either zero or has the same sign as the _dividend_ and has the absolute value less than the absolute value of the divisor. */ @SinceKotlin("1.1") + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun rem(other: Byte): Long = rem(other.toLong()) /** @@ -167,6 +198,7 @@ public class Long internal constructor( * The result is either zero or has the same sign as the _dividend_ and has the absolute value less than the absolute value of the divisor. */ @SinceKotlin("1.1") + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun rem(other: Short): Long = rem(other.toLong()) /** @@ -175,6 +207,7 @@ public class Long internal constructor( * The result is either zero or has the same sign as the _dividend_ and has the absolute value less than the absolute value of the divisor. */ @SinceKotlin("1.1") + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun rem(other: Int): Long = rem(other.toLong()) /** @@ -183,6 +216,7 @@ public class Long internal constructor( * The result is either zero or has the same sign as the _dividend_ and has the absolute value less than the absolute value of the divisor. */ @SinceKotlin("1.1") + @kotlin.internal.IntrinsicConstEvaluation public operator fun rem(other: Long): Long = modulo(other) /** @@ -191,6 +225,7 @@ public class Long internal constructor( * The result is either zero or has the same sign as the _dividend_ and has the absolute value less than the absolute value of the divisor. */ @SinceKotlin("1.1") + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun rem(other: Float): Float = toFloat() % other /** @@ -199,6 +234,7 @@ public class Long internal constructor( * The result is either zero or has the same sign as the _dividend_ and has the absolute value less than the absolute value of the divisor. */ @SinceKotlin("1.1") + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun rem(other: Double): Double = toDouble() % other /** @@ -216,9 +252,11 @@ public class Long internal constructor( public operator fun dec(): Long = this - 1L /** Returns this value. */ + @kotlin.internal.IntrinsicConstEvaluation public inline operator fun unaryPlus(): Long = this /** Returns the negative of this value. */ + @kotlin.internal.IntrinsicConstEvaluation public operator fun unaryMinus(): Long = inv() + 1L /** Creates a range from this value to the specified [other] value. */ @@ -275,6 +313,7 @@ public class Long internal constructor( * Note that only the six lowest-order bits of the [bitCount] are used as the shift distance. * The shift distance actually used is therefore always in the range `0..63`. */ + @kotlin.internal.IntrinsicConstEvaluation public infix fun shl(bitCount: Int): Long = shiftLeft(bitCount) /** @@ -283,6 +322,7 @@ public class Long internal constructor( * Note that only the six lowest-order bits of the [bitCount] are used as the shift distance. * The shift distance actually used is therefore always in the range `0..63`. */ + @kotlin.internal.IntrinsicConstEvaluation public infix fun shr(bitCount: Int): Long = shiftRight(bitCount) /** @@ -291,28 +331,46 @@ public class Long internal constructor( * Note that only the six lowest-order bits of the [bitCount] are used as the shift distance. * The shift distance actually used is therefore always in the range `0..63`. */ + @kotlin.internal.IntrinsicConstEvaluation public infix fun ushr(bitCount: Int): Long = shiftRightUnsigned(bitCount) /** Performs a bitwise AND operation between the two values. */ + @kotlin.internal.IntrinsicConstEvaluation public infix fun and(other: Long): Long = Long(low and other.low, high and other.high) /** Performs a bitwise OR operation between the two values. */ + @kotlin.internal.IntrinsicConstEvaluation public infix fun or(other: Long): Long = Long(low or other.low, high or other.high) /** Performs a bitwise XOR operation between the two values. */ + @kotlin.internal.IntrinsicConstEvaluation public infix fun xor(other: Long): Long = Long(low xor other.low, high xor other.high) /** Inverts the bits in this value. */ + @kotlin.internal.IntrinsicConstEvaluation public fun inv(): Long = Long(low.inv(), high.inv()) + @kotlin.internal.IntrinsicConstEvaluation public override fun toByte(): Byte = low.toByte() + @Deprecated("Direct conversion to Char is deprecated. Use toInt().toChar() or Char constructor instead.", ReplaceWith("this.toInt().toChar()")) @DeprecatedSinceKotlin(warningSince = "1.5", errorSince = "2.3") + @kotlin.internal.IntrinsicConstEvaluation public override fun toChar(): Char = low.toChar() + + @kotlin.internal.IntrinsicConstEvaluation public override fun toShort(): Short = low.toShort() + + @kotlin.internal.IntrinsicConstEvaluation public override fun toInt(): Int = low + + @kotlin.internal.IntrinsicConstEvaluation public override fun toLong(): Long = this + + @kotlin.internal.IntrinsicConstEvaluation public override fun toFloat(): Float = toDouble().toFloat() + + @kotlin.internal.IntrinsicConstEvaluation public override fun toDouble(): Double = toNumber() // This method is used by JavaScript to convert objects of type Long to primitives. @@ -324,9 +382,11 @@ public class Long internal constructor( @JsName("valueOf") internal fun valueOf() = toDouble() + @kotlin.internal.IntrinsicConstEvaluation override fun equals(other: Any?): Boolean = other is Long && equalsLong(other) override fun hashCode(): Int = hashCode(this) + @kotlin.internal.IntrinsicConstEvaluation override fun toString(): String = this.toStringImpl(radix = 10) } diff --git a/libraries/stdlib/js/src/kotlin/reflect/KCallable.kt b/libraries/stdlib/js/src/kotlin/reflect/KCallable.kt index e65165a2389..6be7ccc4c18 100644 --- a/libraries/stdlib/js/src/kotlin/reflect/KCallable.kt +++ b/libraries/stdlib/js/src/kotlin/reflect/KCallable.kt @@ -19,5 +19,6 @@ public actual interface KCallable { * - property accessors: the getter for a property named "foo" will have the name "", * the setter, similarly, will have the name "". */ + @kotlin.internal.IntrinsicConstEvaluation public actual val name: String }