26 lines
759 B
Kotlin
Vendored
26 lines
759 B
Kotlin
Vendored
// WITH_STDLIB
|
|
// TARGET_BACKEND: JVM
|
|
// WORKS_WHEN_VALUE_CLASS
|
|
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
|
|
|
OPTIONAL_JVM_INLINE_ANNOTATION
|
|
value class UInt<T: Int>(val x: T)
|
|
|
|
OPTIONAL_JVM_INLINE_ANNOTATION
|
|
value class UIntArray(private val storage: IntArray) : Collection<UInt<Int>> {
|
|
public override val size: Int get() = storage.size
|
|
|
|
override operator fun iterator() = TODO()
|
|
override fun contains(element: UInt<Int>): Boolean = TODO()
|
|
override fun containsAll(elements: Collection<UInt<Int>>): Boolean = TODO()
|
|
override fun isEmpty(): Boolean = TODO()
|
|
}
|
|
|
|
fun calculate(u: UIntArray): Int {
|
|
return u.size
|
|
}
|
|
|
|
fun box(): String {
|
|
if (calculate(UIntArray(intArrayOf(1, 2, 3, 4))) != 4) return "Fail"
|
|
return "OK"
|
|
} |