26 lines
606 B
Kotlin
Vendored
26 lines
606 B
Kotlin
Vendored
// WITH_STDLIB
|
|
// WORKS_WHEN_VALUE_CLASS
|
|
// LANGUAGE: +ValueClasses
|
|
|
|
OPTIONAL_JVM_INLINE_ANNOTATION
|
|
value class InlineLong(val value: Long)
|
|
inline val Number.toInlineLong get() = InlineLong(this.toLong())
|
|
|
|
fun box(): String {
|
|
val value = 0
|
|
|
|
val withoutSubject = when (value.toInlineLong) {
|
|
0.toInlineLong -> true
|
|
else -> false
|
|
}
|
|
if (!withoutSubject) return "Fail: without subject"
|
|
|
|
val withSubject = when (val subject = value.toInlineLong) {
|
|
0.toInlineLong -> true
|
|
else -> false
|
|
}
|
|
if (!withSubject) return "Fail: with subject"
|
|
|
|
return "OK"
|
|
}
|