diff --git a/generators/builtins/primitives/BasePrimitivesGenerator.kt b/generators/builtins/primitives/BasePrimitivesGenerator.kt index 6d1fcd3514d..9b0e12a38f0 100644 --- a/generators/builtins/primitives/BasePrimitivesGenerator.kt +++ b/generators/builtins/primitives/BasePrimitivesGenerator.kt @@ -352,7 +352,7 @@ abstract class BasePrimitivesGenerator(private val writer: PrintWriter) : BuiltI method { appendDoc(doc) - annotations += "kotlin.internal.IntrinsicConstEvaluation" + annotations += intrinsicConstEvaluationAnnotation signature { isOverride = otherKind == thisKind isOperator = true @@ -379,7 +379,7 @@ abstract class BasePrimitivesGenerator(private val writer: PrintWriter) : BuiltI val annotationsToAdd = buildList { if (operatorName == "rem") add("SinceKotlin(\"1.1\")") - add("kotlin.internal.IntrinsicConstEvaluation") + add(intrinsicConstEvaluationAnnotation) } method { @@ -418,7 +418,7 @@ abstract class BasePrimitivesGenerator(private val writer: PrintWriter) : BuiltI method { appendDoc(doc) - annotations += "kotlin.internal.IntrinsicConstEvaluation" + annotations += intrinsicConstEvaluationAnnotation signature { isOperator = true methodName = operatorName @@ -487,7 +487,7 @@ abstract class BasePrimitivesGenerator(private val writer: PrintWriter) : BuiltI for ((operatorName, doc) in shiftOperators) { method { appendDoc(doc + END_LINE + END_LINE + detail) - annotations += "kotlin.internal.IntrinsicConstEvaluation" + annotations += intrinsicConstEvaluationAnnotation signature { isInfix = true methodName = operatorName @@ -505,7 +505,7 @@ abstract class BasePrimitivesGenerator(private val writer: PrintWriter) : BuiltI for ((operatorName, doc) in bitwiseOperators) { method { appendDoc(doc) - annotations += "kotlin.internal.IntrinsicConstEvaluation" + annotations += intrinsicConstEvaluationAnnotation signature { isInfix = true methodName = operatorName @@ -521,7 +521,7 @@ abstract class BasePrimitivesGenerator(private val writer: PrintWriter) : BuiltI method { appendDoc("Inverts the bits in this value.") - annotations += "kotlin.internal.IntrinsicConstEvaluation" + annotations += intrinsicConstEvaluationAnnotation signature { methodName = "inv" returnType = thisKind.capitalized @@ -574,7 +574,7 @@ abstract class BasePrimitivesGenerator(private val writer: PrintWriter) : BuiltI annotationsToAdd += "Suppress(\"OVERRIDE_DEPRECATION\")" } - annotationsToAdd += "kotlin.internal.IntrinsicConstEvaluation" + annotationsToAdd += intrinsicConstEvaluationAnnotation method { appendDoc(doc) annotations += annotationsToAdd @@ -589,7 +589,7 @@ abstract class BasePrimitivesGenerator(private val writer: PrintWriter) : BuiltI private fun ClassBuilder.generateEquals(thisKind: PrimitiveType) { method { - annotations += "kotlin.internal.IntrinsicConstEvaluation" + annotations += intrinsicConstEvaluationAnnotation signature { isOverride = true methodName = "equals" @@ -604,7 +604,7 @@ abstract class BasePrimitivesGenerator(private val writer: PrintWriter) : BuiltI private fun ClassBuilder.generateToString(thisKind: PrimitiveType) { method { - annotations += "kotlin.internal.IntrinsicConstEvaluation" + annotations += intrinsicConstEvaluationAnnotation signature { isOverride = true methodName = "toString" diff --git a/generators/builtins/primitives/NativePrimitivesGenerator.kt b/generators/builtins/primitives/NativePrimitivesGenerator.kt index c568af04ced..c26152c3a3c 100644 --- a/generators/builtins/primitives/NativePrimitivesGenerator.kt +++ b/generators/builtins/primitives/NativePrimitivesGenerator.kt @@ -213,7 +213,7 @@ class NativePrimitivesGenerator(writer: PrintWriter) : BasePrimitivesGenerator(w private fun ClassBuilder.generateCustomEquals(thisKind: PrimitiveType) { method { annotations += "Deprecated(\"Provided for binary compatibility\", level = DeprecationLevel.HIDDEN)" - annotations += "kotlin.internal.IntrinsicConstEvaluation" + annotations += intrinsicConstEvaluationAnnotation signature { methodName = "equals" parameter { diff --git a/generators/builtins/primitives/utils.kt b/generators/builtins/primitives/utils.kt index 9278685954c..7c87c23fe47 100644 --- a/generators/builtins/primitives/utils.kt +++ b/generators/builtins/primitives/utils.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.generators.builtins.numbers.primitives import org.jetbrains.kotlin.generators.builtins.PrimitiveType internal const val END_LINE = "\n" +internal const val intrinsicConstEvaluationAnnotation = "kotlin.internal.IntrinsicConstEvaluation" internal fun PrimitiveType.castToIfNecessary(otherType: PrimitiveType): String { if (this !in PrimitiveType.onlyNumeric || otherType !in PrimitiveType.onlyNumeric) {