Minor. Add more tests
This commit is contained in:
+14
@@ -0,0 +1,14 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
// FILE: 1.kt
|
||||
|
||||
fun box(): String = X(Z("OK")).z.result
|
||||
|
||||
// FILE: 2.kt
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class Z<T: String>(val result: T)
|
||||
|
||||
class X(val z: Z<String>)
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
// FILE: 2.kt
|
||||
|
||||
fun box(): String = X(Z("OK")).z.result
|
||||
|
||||
// FILE: 1.kt
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class Z<T: String>(val result: T)
|
||||
|
||||
class X(val z: Z<String>)
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class S<T: String>(val string: T)
|
||||
|
||||
class Test(val x: S<String>, val y: S<String> = S("K")) {
|
||||
val test = x.string + y.string
|
||||
}
|
||||
|
||||
fun box() = Test(S("O")).test
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class S<T: String>(val string: T)
|
||||
|
||||
abstract class Base(val x: S<String>)
|
||||
|
||||
class Test(x: S<String>) : Base(x)
|
||||
|
||||
fun box() = Test(S("OK")).x.string
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class S<T: String>(val string: T)
|
||||
|
||||
abstract class Base(val x: S<String>)
|
||||
|
||||
class Test : Base {
|
||||
constructor() : super(S("OK"))
|
||||
}
|
||||
|
||||
fun box() = Test().x.string
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class S<T: String>(val string: T)
|
||||
|
||||
class Test(val x: S<String>, val y: S<String>) {
|
||||
constructor(x: S<String>) : this(x, S("K"))
|
||||
|
||||
val test = x.string + y.string
|
||||
}
|
||||
|
||||
fun box() = Test(S("O")).test
|
||||
Vendored
+12
@@ -0,0 +1,12 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class S<T: String>(val string: T)
|
||||
|
||||
enum class Test(val s: S<String>) {
|
||||
OK(S("OK"))
|
||||
}
|
||||
|
||||
fun box() = Test.OK.s.string
|
||||
Vendored
+14
@@ -0,0 +1,14 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class S<T: String>(val string: T)
|
||||
|
||||
class Outer(val s1: S<String>) {
|
||||
inner class Inner(val s2: S<String>) {
|
||||
val test = s1.string + s2.string
|
||||
}
|
||||
}
|
||||
|
||||
fun box() = Outer(S("O")).Inner(S("K")).test
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class S<T: String>(val string: T)
|
||||
|
||||
class Test(val s: S<String>)
|
||||
|
||||
fun box() = Test(S("OK")).s.string
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class S<T: String>(val string: T)
|
||||
|
||||
class Outer private constructor(val s: S<String>) {
|
||||
class Nested {
|
||||
fun test(s: S<String>) = Outer(s)
|
||||
}
|
||||
}
|
||||
|
||||
fun box() = Outer.Nested().test(S("OK")).s.string
|
||||
Vendored
+12
@@ -0,0 +1,12 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class S<T: String>(val string: T)
|
||||
|
||||
sealed class Sealed(val x: S<String>)
|
||||
|
||||
class Test(x: S<String>) : Sealed(x)
|
||||
|
||||
fun box() = Test(S("OK")).x.string
|
||||
Vendored
+12
@@ -0,0 +1,12 @@
|
||||
// WITH_STDLIB
|
||||
// WORKS_WHEN_VALUE_CLASS
|
||||
// LANGUAGE: +ValueClasses, +GenericInlineClassParameter
|
||||
|
||||
OPTIONAL_JVM_INLINE_ANNOTATION
|
||||
value class S<T: String>(val string: T)
|
||||
|
||||
class Test(val s: S<String>) {
|
||||
constructor(x: String, s: S<String>) : this(S(x + s.string))
|
||||
}
|
||||
|
||||
fun box() = Test("O", S("K")).s.string
|
||||
Reference in New Issue
Block a user