Replaced deprecated inline classes with JvmInline value classes in tests
This commit is contained in:
committed by
TeamCityServer
parent
b0aefd543a
commit
1da46586bd
@@ -1,7 +1,8 @@
|
||||
// KJS_WITH_FULL_RUNTIME
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class UInt(private val value: Int) : Comparable<UInt> {
|
||||
@JvmInline
|
||||
value class UInt(private val value: Int) : Comparable<UInt> {
|
||||
companion object {
|
||||
private const val INT_MASK = 0xffffffffL
|
||||
}
|
||||
@@ -21,7 +22,8 @@ inline class UInt(private val value: Int) : Comparable<UInt> {
|
||||
value xor Int.MIN_VALUE
|
||||
}
|
||||
|
||||
inline class UIntArray(private val intArray: IntArray) {
|
||||
@JvmInline
|
||||
value class UIntArray(private val intArray: IntArray) {
|
||||
val size: Int get() = intArray.size
|
||||
|
||||
operator fun get(index: Int): UInt = UInt(intArray[index])
|
||||
@@ -33,7 +35,8 @@ inline class UIntArray(private val intArray: IntArray) {
|
||||
operator fun iterator(): UIntIterator = UIntIterator(intArray.iterator())
|
||||
}
|
||||
|
||||
inline class UIntIterator(private val intIterator: IntIterator) : Iterator<UInt> {
|
||||
@JvmInline
|
||||
value class UIntIterator(private val intIterator: IntIterator) : Iterator<UInt> {
|
||||
override fun next(): UInt {
|
||||
return UInt(intIterator.next())
|
||||
}
|
||||
|
||||
+4
-1
@@ -1,7 +1,10 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
@Target(AnnotationTarget.PROPERTY)
|
||||
annotation class Anno
|
||||
|
||||
inline class Z(val s: String)
|
||||
@JvmInline
|
||||
value class Z(val s: String)
|
||||
|
||||
class A {
|
||||
@Anno
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
// IGNORE_BACKEND: JVM
|
||||
|
||||
inline class A(val x: Int) {
|
||||
@JvmInline
|
||||
value class A(val x: Int) {
|
||||
fun f(): Int = super.hashCode()
|
||||
}
|
||||
|
||||
|
||||
Vendored
+8
-4
@@ -1,18 +1,22 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class IcInt(val i: Int) {
|
||||
@JvmInline
|
||||
value class IcInt(val i: Int) {
|
||||
fun simple(): String = i.toString()
|
||||
}
|
||||
|
||||
inline class IcLong(val l: Long) {
|
||||
@JvmInline
|
||||
value class IcLong(val l: Long) {
|
||||
fun simple(): String = l.toString()
|
||||
}
|
||||
|
||||
inline class IcAny(val a: Any?) {
|
||||
@JvmInline
|
||||
value class IcAny(val a: Any?) {
|
||||
fun simple(): String = a?.toString() ?: "null"
|
||||
}
|
||||
|
||||
inline class IcOverIc(val o: IcLong) {
|
||||
@JvmInline
|
||||
value class IcOverIc(val o: IcLong) {
|
||||
fun simple(): String = o.toString()
|
||||
}
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class IC private constructor(val i: Int) {
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class IC private constructor(val i: Int) {
|
||||
@Suppress("SECONDARY_CONSTRUCTOR_WITH_BODY_INSIDE_INLINE_CLASS")
|
||||
constructor() : this(0) {
|
||||
counter += 1
|
||||
|
||||
+3
-1
@@ -1,5 +1,7 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class IC(val i: Int) {
|
||||
@JvmInline
|
||||
value class IC(val i: Int) {
|
||||
init {
|
||||
counter += i
|
||||
}
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
// WITH_RUNTIME
|
||||
// IGNORE_BACKEND: JVM
|
||||
abstract class C<T> {
|
||||
fun foo(v: T?, x: (T) -> Any?) = v?.let { x(it) }
|
||||
}
|
||||
|
||||
inline class V(val value: Any?)
|
||||
@JvmInline
|
||||
value class V(val value: Any?)
|
||||
|
||||
class D : C<V>()
|
||||
|
||||
|
||||
+7
-4
@@ -1,4 +1,4 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
class BoxT<T>(val boxed: T)
|
||||
class BoxAny(val boxed: Any?)
|
||||
@@ -6,11 +6,14 @@ class BoxFoo(val boxed: IFoo?)
|
||||
|
||||
interface IFoo
|
||||
|
||||
inline class Str(val value: String) : IFoo
|
||||
@JvmInline
|
||||
value class Str(val value: String) : IFoo
|
||||
|
||||
inline class Str2(val value: Str): IFoo
|
||||
@JvmInline
|
||||
value class Str2(val value: Str): IFoo
|
||||
|
||||
inline class StrArr(val value: Array<String>): IFoo
|
||||
@JvmInline
|
||||
value class StrArr(val value: Array<String>): IFoo
|
||||
|
||||
fun boxToTypeParameter(x: Str?) = BoxT(x)
|
||||
fun boxToNullableAny(x: Str?) = BoxAny(x)
|
||||
|
||||
+3
-2
@@ -1,4 +1,4 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
class BoxT<T>(val boxed: T)
|
||||
class BoxAny(val boxed: Any?)
|
||||
@@ -6,7 +6,8 @@ class BoxFoo(val boxed: IFoo?)
|
||||
|
||||
interface IFoo
|
||||
|
||||
inline class I32(val value: Int): IFoo
|
||||
@JvmInline
|
||||
value class I32(val value: Int): IFoo
|
||||
|
||||
fun boxToTypeParameter(x: I32?) = BoxT(x)
|
||||
fun boxToNullableAny(x: I32?) = BoxAny(x)
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Result<T>(val a: Any?)
|
||||
@JvmInline
|
||||
value class Result<T>(val a: Any?)
|
||||
|
||||
fun box(): String {
|
||||
val a = Result<Int>(1) // valueOf
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Any)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Any)
|
||||
|
||||
fun useX(x: X): String = x.x as String
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Any)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Any)
|
||||
|
||||
fun useX(x: X): String = x.x as String
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Int)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Int)
|
||||
|
||||
fun useX(x: X): String = if (x.x == 42) "OK" else "fail: $x"
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Any?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Any?)
|
||||
|
||||
fun useX(x: X): String = x.x as String
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Any?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Any?)
|
||||
|
||||
fun useX(x: X): String = if (x.x == null) "OK" else "fail: $x"
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Int?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Int?)
|
||||
|
||||
fun useX(x: X): String = if (x.x == 42) "OK" else "fail: $x"
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Int?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Int?)
|
||||
|
||||
fun useX(x: X): String = if (x.x == null) "OK" else "fail: $x"
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: String?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: String?)
|
||||
|
||||
fun useX(x: X): String = x.x ?: "fail: $x"
|
||||
|
||||
|
||||
Vendored
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: String?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: String?)
|
||||
|
||||
fun useX(x: X): String = if (x.x == null) "OK" else "fail: $x"
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: String)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: String)
|
||||
|
||||
fun useX(x: X): String = x.x
|
||||
|
||||
|
||||
+3
-1
@@ -1,11 +1,13 @@
|
||||
// IGNORE_BACKEND: JVM
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface X<T> {
|
||||
operator fun plus(n: Int) : T
|
||||
fun next(): T = this + 1
|
||||
}
|
||||
|
||||
inline class A(val value: Int) : X<A> {
|
||||
@JvmInline
|
||||
value class A(val value: Int) : X<A> {
|
||||
override operator fun plus(n: Int) = A(value + n)
|
||||
}
|
||||
|
||||
|
||||
+3
-1
@@ -1,5 +1,7 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class X(val x: Any)
|
||||
@JvmInline
|
||||
value class X(val x: Any)
|
||||
|
||||
interface IBar {
|
||||
fun bar(): Any
|
||||
|
||||
+3
-1
@@ -1,5 +1,7 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class X(val x: Any?)
|
||||
@JvmInline
|
||||
value class X(val x: Any?)
|
||||
|
||||
interface IBar {
|
||||
fun bar(): Any
|
||||
|
||||
compiler/testData/codegen/box/inlineClasses/boxReturnValueOnOverride/covariantOverrideErasedToAny.kt
Vendored
+3
-1
@@ -1,5 +1,7 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class X(val x: Any)
|
||||
@JvmInline
|
||||
value class X(val x: Any)
|
||||
|
||||
interface IFoo {
|
||||
fun foo(): Any
|
||||
|
||||
+3
-1
@@ -1,9 +1,11 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface IFoo {
|
||||
fun foo(): String
|
||||
}
|
||||
|
||||
inline class ICFoo(val t: IFoo): IFoo {
|
||||
@JvmInline
|
||||
value class ICFoo(val t: IFoo): IFoo {
|
||||
override fun foo(): String = t.foo()
|
||||
}
|
||||
|
||||
|
||||
+3
-1
@@ -1,5 +1,7 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class X(val x: Char)
|
||||
@JvmInline
|
||||
value class X(val x: Char)
|
||||
|
||||
interface IFoo {
|
||||
fun foo(): Any
|
||||
|
||||
+2
-1
@@ -8,7 +8,8 @@ interface IFooMutableList {
|
||||
fun foo(): MutableList<String>
|
||||
}
|
||||
|
||||
inline class AL(val t: MutableList<String>) : MutableList<String> {
|
||||
@JvmInline
|
||||
value class AL(val t: MutableList<String>) : MutableList<String> {
|
||||
override val size: Int get() = t.size
|
||||
override fun get(index: Int): String = t.get(index)
|
||||
override fun set(index: Int, element: String): String = t.set(index, element)
|
||||
|
||||
+3
-1
@@ -1,8 +1,10 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface IQ1
|
||||
interface IQ2
|
||||
|
||||
inline class X(val x: Any): IQ1, IQ2
|
||||
@JvmInline
|
||||
value class X(val x: Any): IQ1, IQ2
|
||||
|
||||
interface IFoo1 {
|
||||
fun foo(): IQ1
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Any)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Any)
|
||||
|
||||
interface IFoo<T> {
|
||||
fun foo(): T
|
||||
|
||||
Vendored
+4
-1
@@ -1,3 +1,5 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface GFoo<out T> {
|
||||
fun foo(): T
|
||||
}
|
||||
@@ -8,7 +10,8 @@ interface IBar {
|
||||
|
||||
interface SFooBar : GFoo<IBar>
|
||||
|
||||
inline class X(val x: String) : IBar {
|
||||
@JvmInline
|
||||
value class X(val x: String) : IBar {
|
||||
override fun bar(): String = x
|
||||
}
|
||||
|
||||
|
||||
+3
-1
@@ -1,5 +1,7 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class X(val x: String)
|
||||
@JvmInline
|
||||
value class X(val x: String)
|
||||
|
||||
interface IFoo1<T> {
|
||||
fun foo(x: T): X
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class ResultOrClosed(val x: Any?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class ResultOrClosed(val x: Any?)
|
||||
|
||||
interface A<T> {
|
||||
fun foo(): T
|
||||
|
||||
+2
-1
@@ -1,6 +1,7 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class FieldValue(val value: String)
|
||||
@JvmInline
|
||||
value class FieldValue(val value: String)
|
||||
|
||||
enum class RequestFields {
|
||||
ENUM_ONE
|
||||
|
||||
+2
-1
@@ -2,7 +2,8 @@
|
||||
// WASM_MUTE_REASON: STDLIB_TEXT
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class NumberInlineClass(val value: Double)
|
||||
@JvmInline
|
||||
value class NumberInlineClass(val value: Double)
|
||||
|
||||
interface TypeAdapter<FROM, TO> {
|
||||
fun decode(string: FROM): TO
|
||||
|
||||
+2
-1
@@ -2,7 +2,8 @@
|
||||
// WASM_MUTE_REASON: STDLIB_TEXT
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class NumberInlineClass(val value: Double)
|
||||
@JvmInline
|
||||
value class NumberInlineClass(val value: Double)
|
||||
|
||||
interface TypeAdapter<FROM, TO> {
|
||||
fun decode(string: FROM): TO
|
||||
|
||||
+6
-2
@@ -1,10 +1,14 @@
|
||||
inline class Marker(val i: Int)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class Marker(val i: Int)
|
||||
|
||||
interface I<T> {
|
||||
fun foo(i: Marker) : T
|
||||
}
|
||||
|
||||
inline class IC(val a: Any)
|
||||
@JvmInline
|
||||
value class IC(val a: Any)
|
||||
|
||||
class C : I<IC> {
|
||||
override fun foo(i: Marker): IC = IC("OK")
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Any)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Any)
|
||||
|
||||
interface IFoo<out T : X?> {
|
||||
fun foo(): T
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Any?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Any?)
|
||||
|
||||
interface IFoo<out T : X?> {
|
||||
fun foo(): T
|
||||
|
||||
+3
-1
@@ -1,7 +1,9 @@
|
||||
// IGNORE_BACKEND: JS_IR
|
||||
// WITH_RUNTIME
|
||||
// IGNORE_BACKEND: JS_IR_ES6
|
||||
|
||||
inline class X(val x: Any?)
|
||||
@JvmInline
|
||||
value class X(val x: Any?)
|
||||
|
||||
interface IFoo<out T : X?> {
|
||||
fun foo(): T
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Any)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Any)
|
||||
|
||||
interface IFoo {
|
||||
fun foo(): X?
|
||||
|
||||
+3
-1
@@ -1,5 +1,7 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class X(val x: Any?)
|
||||
@JvmInline
|
||||
value class X(val x: Any?)
|
||||
|
||||
interface IFoo {
|
||||
fun foo(): X?
|
||||
|
||||
+3
-1
@@ -1,5 +1,7 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class X(val x: Any?)
|
||||
@JvmInline
|
||||
value class X(val x: Any?)
|
||||
|
||||
interface IFoo {
|
||||
fun foo(): X?
|
||||
|
||||
Vendored
+3
-1
@@ -1,9 +1,11 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface IQ {
|
||||
fun ok(): String
|
||||
}
|
||||
|
||||
inline class X(val t: IQ): IQ {
|
||||
@JvmInline
|
||||
value class X(val t: IQ): IQ {
|
||||
override fun ok(): String = t.ok()
|
||||
}
|
||||
|
||||
|
||||
Vendored
+3
-1
@@ -1,9 +1,11 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface IQ {
|
||||
fun ok(): String
|
||||
}
|
||||
|
||||
inline class X(val t: IQ): IQ {
|
||||
@JvmInline
|
||||
value class X(val t: IQ): IQ {
|
||||
override fun ok(): String = t.ok()
|
||||
}
|
||||
|
||||
|
||||
Vendored
+4
-1
@@ -1,10 +1,13 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface IBase
|
||||
|
||||
interface IQ : IBase {
|
||||
fun ok(): String
|
||||
}
|
||||
|
||||
inline class X(val t: IQ): IQ {
|
||||
@JvmInline
|
||||
value class X(val t: IQ): IQ {
|
||||
override fun ok(): String = t.ok()
|
||||
}
|
||||
|
||||
|
||||
Vendored
+4
-1
@@ -1,10 +1,13 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface IBase
|
||||
|
||||
interface IQ : IBase {
|
||||
fun ok(): String
|
||||
}
|
||||
|
||||
inline class X(val t: IQ): IQ {
|
||||
@JvmInline
|
||||
value class X(val t: IQ): IQ {
|
||||
override fun ok(): String = t.ok()
|
||||
}
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class X(val x: Any)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class X(val x: Any)
|
||||
|
||||
interface IFoo<T> {
|
||||
fun foo(): T
|
||||
|
||||
+4
-1
@@ -1,3 +1,5 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface IFoo1<out T> {
|
||||
fun foo(): T
|
||||
}
|
||||
@@ -6,7 +8,8 @@ interface IFoo2<out T> {
|
||||
fun foo(): T
|
||||
}
|
||||
|
||||
inline class X(val x: String)
|
||||
@JvmInline
|
||||
value class X(val x: String)
|
||||
|
||||
class Test : IFoo1<X>, IFoo2<X> {
|
||||
override fun foo(): X = X("OK")
|
||||
|
||||
+5
-3
@@ -1,10 +1,12 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class UInt(private val value: Int) {
|
||||
@JvmInline
|
||||
value class UInt(private val value: Int) {
|
||||
fun asInt() = value
|
||||
}
|
||||
|
||||
inline class UIntArray(private val intArray: IntArray) {
|
||||
@JvmInline
|
||||
value class UIntArray(private val intArray: IntArray) {
|
||||
operator fun get(index: Int): UInt = UInt(intArray[index])
|
||||
|
||||
operator fun set(index: Int, value: UInt) {
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class UInt(private val value: Int) {
|
||||
@JvmInline
|
||||
value class UInt(private val value: Int) {
|
||||
operator fun plus(other: UInt): UInt = UInt(value + other.asValue())
|
||||
|
||||
fun asValue(): Int = value
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class IC(val x: String)
|
||||
@JvmInline
|
||||
value class IC(val x: String)
|
||||
|
||||
interface I<T> {
|
||||
fun foo(): T
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Result<T>(val a: Any?) {
|
||||
@JvmInline
|
||||
value class Result<T>(val a: Any?) {
|
||||
fun getOrThrow(): T = a as T
|
||||
}
|
||||
|
||||
|
||||
Vendored
+5
-3
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class InlinedComparable(val x: Int) : Comparable<InlinedComparable> {
|
||||
@JvmInline
|
||||
value class InlinedComparable(val x: Int) : Comparable<InlinedComparable> {
|
||||
override fun compareTo(other: InlinedComparable): Int {
|
||||
return x.compareTo(other.x)
|
||||
}
|
||||
@@ -12,7 +13,8 @@ interface Base<T> {
|
||||
fun Base<T>.foo(a: Base<T>, b: T): Base<T>
|
||||
}
|
||||
|
||||
inline class InlinedBase(val x: Int) : Base<InlinedBase> {
|
||||
@JvmInline
|
||||
value class InlinedBase(val x: Int) : Base<InlinedBase> {
|
||||
override fun Base<InlinedBase>.foo(a: Base<InlinedBase>, b: InlinedBase): Base<InlinedBase> {
|
||||
return if (a is InlinedBase) InlinedBase(a.x + b.x) else this
|
||||
}
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Props(val intArray: IntArray) {
|
||||
@JvmInline
|
||||
value class Props(val intArray: IntArray) {
|
||||
val size get() = intArray.size
|
||||
|
||||
fun foo(): Int {
|
||||
|
||||
+4
-1
@@ -2,9 +2,12 @@
|
||||
// FULL_JDK
|
||||
// TARGET_BACKEND: JVM
|
||||
|
||||
// WITH_RUNTIME
|
||||
|
||||
import java.lang.reflect.InvocationTargetException
|
||||
|
||||
inline class Simple(val x: String) {
|
||||
@JvmInline
|
||||
value class Simple(val x: String) {
|
||||
fun somethingWeird() {}
|
||||
}
|
||||
|
||||
|
||||
Vendored
+5
-3
@@ -1,9 +1,11 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
// TARGET_BACKEND: JVM
|
||||
|
||||
inline class UInt(val x: Int)
|
||||
@JvmInline
|
||||
value class UInt(val x: Int)
|
||||
|
||||
inline class UIntArray(private val storage: IntArray) : Collection<UInt> {
|
||||
@JvmInline
|
||||
value class UIntArray(private val storage: IntArray) : Collection<UInt> {
|
||||
public override val size: Int get() = storage.size
|
||||
|
||||
override operator fun iterator() = TODO()
|
||||
|
||||
Vendored
+6
-4
@@ -1,9 +1,11 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int)
|
||||
inline class L(val x: Long)
|
||||
inline class S(val x: String)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class L(val x: Long)
|
||||
@JvmInline
|
||||
value class S(val x: String)
|
||||
|
||||
fun Z.test() = x
|
||||
fun L.test() = x
|
||||
|
||||
Vendored
+6
-4
@@ -1,9 +1,11 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int)
|
||||
inline class L(val x: Long)
|
||||
inline class S(val x: String)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class L(val x: Long)
|
||||
@JvmInline
|
||||
value class S(val x: String)
|
||||
|
||||
val Z.xx get() = x
|
||||
val L.xx get() = x
|
||||
|
||||
Vendored
+6
-4
@@ -1,15 +1,17 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int) {
|
||||
@JvmInline
|
||||
value class Z(val x: Int) {
|
||||
fun test() = x
|
||||
}
|
||||
|
||||
inline class L(val x: Long) {
|
||||
@JvmInline
|
||||
value class L(val x: Long) {
|
||||
fun test() = x
|
||||
}
|
||||
|
||||
inline class S(val x: String) {
|
||||
@JvmInline
|
||||
value class S(val x: String) {
|
||||
fun test() = x
|
||||
}
|
||||
|
||||
|
||||
Vendored
+6
-4
@@ -1,15 +1,17 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int) {
|
||||
@JvmInline
|
||||
value class Z(val x: Int) {
|
||||
val xx get() = x
|
||||
}
|
||||
|
||||
inline class L(val x: Long) {
|
||||
@JvmInline
|
||||
value class L(val x: Long) {
|
||||
val xx get() = x
|
||||
}
|
||||
|
||||
inline class S(val x: String) {
|
||||
@JvmInline
|
||||
value class S(val x: String) {
|
||||
val xx get() = x
|
||||
}
|
||||
|
||||
|
||||
Vendored
+6
-4
@@ -1,9 +1,11 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int)
|
||||
inline class L(val x: Long)
|
||||
inline class S(val x: String)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class L(val x: Long)
|
||||
@JvmInline
|
||||
value class S(val x: String)
|
||||
|
||||
fun box(): String {
|
||||
if (Z(42)::x.get() != 42) throw AssertionError()
|
||||
|
||||
+2
-2
@@ -1,8 +1,8 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
inline class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
|
||||
class Outer(val z1: Z) {
|
||||
inner class Inner(val z2: Z)
|
||||
|
||||
+4
-1
@@ -2,9 +2,12 @@
|
||||
// WASM_MUTE_REASON: IGNORED_IN_JS
|
||||
// IGNORE_BACKEND: JS, JS_IR, JS_IR_ES6, NATIVE
|
||||
// WITH_REFLECT
|
||||
// WITH_RUNTIME
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
inline class Z(val s: String)
|
||||
@JvmInline
|
||||
value class Z(val s: String)
|
||||
|
||||
fun box(): String {
|
||||
val a = Z("a")
|
||||
|
||||
Vendored
+6
-4
@@ -1,9 +1,11 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int)
|
||||
inline class L(val x: Long)
|
||||
inline class S(val x: String)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class L(val x: Long)
|
||||
@JvmInline
|
||||
value class S(val x: String)
|
||||
|
||||
fun test(aZ: Z, aL: L, aS: S) = "${aZ.x} ${aL.x} ${aS.x}"
|
||||
|
||||
|
||||
+6
-4
@@ -1,9 +1,11 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int)
|
||||
inline class L(val x: Long)
|
||||
inline class S(val x: String)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class L(val x: Long)
|
||||
@JvmInline
|
||||
value class S(val x: String)
|
||||
|
||||
fun Z.test() = x
|
||||
fun L.test() = x
|
||||
|
||||
+6
-4
@@ -1,9 +1,11 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int)
|
||||
inline class L(val x: Long)
|
||||
inline class S(val x: String)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class L(val x: Long)
|
||||
@JvmInline
|
||||
value class S(val x: String)
|
||||
|
||||
val Z.xx get() = x
|
||||
val L.xx get() = x
|
||||
|
||||
Vendored
+6
-4
@@ -1,10 +1,12 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
inline class Z(internal val x: Int)
|
||||
inline class L(internal val x: Long)
|
||||
inline class S(internal val x: String)
|
||||
@JvmInline
|
||||
value class Z(internal val x: Int)
|
||||
@JvmInline
|
||||
value class L(internal val x: Long)
|
||||
@JvmInline
|
||||
value class S(internal val x: String)
|
||||
|
||||
fun box(): String {
|
||||
assertEquals(42, Z::x.get(Z(42)))
|
||||
|
||||
+6
-4
@@ -1,15 +1,17 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int) {
|
||||
@JvmInline
|
||||
value class Z(val x: Int) {
|
||||
fun test() = x
|
||||
}
|
||||
|
||||
inline class L(val x: Long) {
|
||||
@JvmInline
|
||||
value class L(val x: Long) {
|
||||
fun test() = x
|
||||
}
|
||||
|
||||
inline class S(val x: String) {
|
||||
@JvmInline
|
||||
value class S(val x: String) {
|
||||
fun test() = x
|
||||
}
|
||||
|
||||
|
||||
+6
-4
@@ -1,15 +1,17 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int) {
|
||||
@JvmInline
|
||||
value class Z(val x: Int) {
|
||||
val xx get() = x
|
||||
}
|
||||
|
||||
inline class L(val x: Long) {
|
||||
@JvmInline
|
||||
value class L(val x: Long) {
|
||||
val xx get() = x
|
||||
}
|
||||
|
||||
inline class S(val x: String) {
|
||||
@JvmInline
|
||||
value class S(val x: String) {
|
||||
val xx get() = x
|
||||
}
|
||||
|
||||
|
||||
Vendored
+6
-4
@@ -1,9 +1,11 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int)
|
||||
inline class L(val x: Long)
|
||||
inline class S(val x: String)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class L(val x: Long)
|
||||
@JvmInline
|
||||
value class S(val x: String)
|
||||
|
||||
fun box(): String {
|
||||
if (42.let(::Z).x != 42) throw AssertionError()
|
||||
|
||||
+6
-4
@@ -1,9 +1,11 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Z(val x: Int)
|
||||
inline class L(val x: Long)
|
||||
inline class S(val x: String)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class L(val x: Long)
|
||||
@JvmInline
|
||||
value class S(val x: String)
|
||||
|
||||
fun box(): String {
|
||||
if ((Z::x).get(Z(42)) != 42) throw AssertionError()
|
||||
|
||||
Vendored
+6
-4
@@ -1,20 +1,22 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
inline class Z(private val x: Int) {
|
||||
@JvmInline
|
||||
value class Z(private val x: Int) {
|
||||
companion object {
|
||||
val xref = Z::x
|
||||
}
|
||||
}
|
||||
|
||||
inline class L(private val x: Long) {
|
||||
@JvmInline
|
||||
value class L(private val x: Long) {
|
||||
companion object {
|
||||
val xref = L::x
|
||||
}
|
||||
}
|
||||
|
||||
inline class S(private val x: String) {
|
||||
@JvmInline
|
||||
value class S(private val x: String) {
|
||||
companion object {
|
||||
val xref = S::x
|
||||
}
|
||||
|
||||
Vendored
+2
-2
@@ -1,6 +1,6 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
inline class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
|
||||
class C(var z: Z)
|
||||
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
inline class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
|
||||
class C(var z: Z)
|
||||
|
||||
|
||||
Vendored
+2
-2
@@ -1,6 +1,6 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
inline class Z(val x: Int)
|
||||
@JvmInline
|
||||
value class Z(val x: Int)
|
||||
|
||||
var topLevel = Z(42)
|
||||
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
inline class R(val x: Any)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class R(val x: Any)
|
||||
|
||||
fun useR(r: R) {
|
||||
if (r.x as String != "OK") throw AssertionError("$r")
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
inline class Value(val value: Any)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class Value(val value: Any)
|
||||
|
||||
object Foo {
|
||||
fun foo(value: Value) {
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
inline class Value(val value: Any?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class Value(val value: Any?)
|
||||
|
||||
object Foo {
|
||||
fun foo(value: Value) {
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
inline class Value(val value: Int)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class Value(val value: Int)
|
||||
|
||||
object Foo {
|
||||
fun foo(value: Value) {
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
inline class Value(val value: Int?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class Value(val value: Int?)
|
||||
|
||||
object Foo {
|
||||
fun foo(value: Value) {
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
inline class Value(val value: Any)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class Value(val value: Any)
|
||||
|
||||
fun foo(value: Value?) = value?.value as String?
|
||||
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class Value(val value: String)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class Value(val value: String)
|
||||
|
||||
object Foo {
|
||||
fun foo(value: Value) {
|
||||
|
||||
+4
-1
@@ -1,4 +1,7 @@
|
||||
inline class Value(val value: String?)
|
||||
// WITH_RUNTIME
|
||||
|
||||
@JvmInline
|
||||
value class Value(val value: String?)
|
||||
|
||||
object Foo {
|
||||
fun foo(value: Value) {
|
||||
|
||||
+3
-2
@@ -1,7 +1,8 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
// WITH_REFLECT
|
||||
|
||||
inline class Foo(val x: String) {
|
||||
@JvmInline
|
||||
value class Foo(val x: String) {
|
||||
fun bar(f: Foo, i: Int): Foo = Foo(x + f.x + i)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Foo<T>(val x: Any) {
|
||||
@JvmInline
|
||||
value class Foo<T>(val x: Any) {
|
||||
fun bar() {}
|
||||
}
|
||||
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Foo(val value: Int)
|
||||
@JvmInline
|
||||
value class Foo(val value: Int)
|
||||
|
||||
fun <T> id(x: T): T = x
|
||||
inline fun <T> inlinedId(x: T): T = x
|
||||
|
||||
+7
-4
@@ -1,12 +1,15 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class WithPrimitive(val a: Int)
|
||||
@JvmInline
|
||||
value class WithPrimitive(val a: Int)
|
||||
fun takeWithPrimitive(a: WithPrimitive) {}
|
||||
|
||||
inline class WithReference(val a: Any)
|
||||
@JvmInline
|
||||
value class WithReference(val a: Any)
|
||||
fun takeWithReference(a: WithReference) {}
|
||||
|
||||
inline class WithNullableReference(val a: Any?)
|
||||
@JvmInline
|
||||
value class WithNullableReference(val a: Any?)
|
||||
fun takeWithNullableReference(a: WithNullableReference) {}
|
||||
|
||||
fun foo(a: WithPrimitive?, b: WithPrimitive) {
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class IC(val x: Int)
|
||||
@JvmInline
|
||||
value class IC(val x: Int)
|
||||
|
||||
interface I<T> {
|
||||
fun foo(t: T): T
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class ULong(val l: Long)
|
||||
@JvmInline
|
||||
value class ULong(val l: Long)
|
||||
|
||||
fun nonLocal(): ULong? {
|
||||
val u1 = ULong(1)
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Foo(val a: Int) {
|
||||
@JvmInline
|
||||
value class Foo(val a: Int) {
|
||||
fun member(): String = ""
|
||||
|
||||
fun asResult() = a
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class InlineNotNullPrimitive(val x: Int)
|
||||
inline class InlineNotNullReference(val y: String)
|
||||
@JvmInline
|
||||
value class InlineNotNullPrimitive(val x: Int)
|
||||
@JvmInline
|
||||
value class InlineNotNullReference(val y: String)
|
||||
|
||||
fun <T> testNotNullPrimitive(a: Any, b: T, c: InlineNotNullPrimitive, d: InlineNotNullPrimitive?) {}
|
||||
fun <T> testNotNullReference(a: Any, b: T, c: InlineNotNullReference, d: InlineNotNullReference?) {}
|
||||
|
||||
+9
-5
@@ -1,9 +1,13 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class InlineNotNullPrimitive(val x: Int)
|
||||
inline class InlineNullablePrimitive(val x: Int?)
|
||||
inline class InlineNotNullReference(val a: Any)
|
||||
inline class InlineNullableReference(val a: Any?)
|
||||
@JvmInline
|
||||
value class InlineNotNullPrimitive(val x: Int)
|
||||
@JvmInline
|
||||
value class InlineNullablePrimitive(val x: Int?)
|
||||
@JvmInline
|
||||
value class InlineNotNullReference(val a: Any)
|
||||
@JvmInline
|
||||
value class InlineNullableReference(val a: Any?)
|
||||
|
||||
fun test1(a: InlineNotNullPrimitive) {
|
||||
val a0 = a
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class IC(val x: Int)
|
||||
@JvmInline
|
||||
value class IC(val x: Int)
|
||||
|
||||
abstract class A<T> {
|
||||
var t: T? = null
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Foo(val x: Int) {
|
||||
@JvmInline
|
||||
value class Foo(val x: Int) {
|
||||
fun empty() = ""
|
||||
fun withParam(a: String) = a
|
||||
fun withInlineClassParam(f: Foo) = f.toString()
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class UInt(val s: Int)
|
||||
@JvmInline
|
||||
value class UInt(val s: Int)
|
||||
|
||||
fun test(a1: Any, a2: UInt?, a3: Any?, a4: Any?): Int {
|
||||
val b1 = a1 as UInt
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class UInt(val u: Int) {
|
||||
@JvmInline
|
||||
value class UInt(val u: Int) {
|
||||
override fun toString(): String {
|
||||
return "UInt: $u"
|
||||
}
|
||||
|
||||
Vendored
+5
-3
@@ -1,7 +1,9 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class UInt(val value: Int)
|
||||
inline class ULong(val value: Long)
|
||||
@JvmInline
|
||||
value class UInt(val value: Int)
|
||||
@JvmInline
|
||||
value class ULong(val value: Long)
|
||||
|
||||
fun foo(u: UInt, f: (UInt) -> ULong): ULong = f(u)
|
||||
inline fun inlinedFoo(u: UInt, f: (UInt) -> ULong): ULong = f(u)
|
||||
|
||||
+3
-2
@@ -1,6 +1,7 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// WITH_RUNTIME
|
||||
|
||||
inline class Result<T>(val a: Any?) {
|
||||
@JvmInline
|
||||
value class Result<T>(val a: Any?) {
|
||||
fun typed(): T = a as T
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
var result = "Fail"
|
||||
|
||||
inline class A(val value: String) {
|
||||
@JvmInline
|
||||
value class A(val value: String) {
|
||||
init {
|
||||
class B {
|
||||
init {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// WITH_RUNTIME
|
||||
// WITH_REFLECT
|
||||
// TARGET_BACKEND: JVM
|
||||
|
||||
@@ -5,10 +6,14 @@ package root
|
||||
|
||||
import kotlin.reflect.KClass
|
||||
|
||||
inline class IcInt(val x: Int)
|
||||
inline class IcLong(val l: Long)
|
||||
inline class IcAny(val a: Any?)
|
||||
inline class IcOverIc(val o: IcLong)
|
||||
@JvmInline
|
||||
value class IcInt(val x: Int)
|
||||
@JvmInline
|
||||
value class IcLong(val l: Long)
|
||||
@JvmInline
|
||||
value class IcAny(val a: Any?)
|
||||
@JvmInline
|
||||
value class IcOverIc(val o: IcLong)
|
||||
|
||||
fun check(c: KClass<*>, s: String) {
|
||||
if (c.toString() != s) error("Fail, expected: $s, actual: $c")
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user