K2: implement BUILDER_INFERENCE_STUB_RECEIVER
#KT-59369 Fixed
This commit is contained in:
committed by
Space Team
parent
5e5e5b8b9f
commit
0ed6256bcc
+1
-1
@@ -10,7 +10,7 @@ fun main(arg: Any) {
|
||||
val value = myBuilder {
|
||||
doSmthng("one ")
|
||||
run { a; this }.a = 10
|
||||
a += 1
|
||||
<!BUILDER_INFERENCE_STUB_RECEIVER!>a += 1<!>
|
||||
this.a = 57
|
||||
this.<!ILLEGAL_SELECTOR, VARIABLE_EXPECTED!>(a)<!> = 57
|
||||
a = x
|
||||
|
||||
Vendored
+3
-3
@@ -26,18 +26,18 @@ fun main(arg: Any, condition: Boolean) {
|
||||
val value = myBuilder {
|
||||
b[0] = 123
|
||||
a = 45
|
||||
a<!OVERLOAD_RESOLUTION_AMBIGUITY!>++<!>
|
||||
a<!NONE_APPLICABLE!>++<!>
|
||||
bar(::a)
|
||||
if (<!USELESS_IS_CHECK!>a is Int<!>) {
|
||||
a = 67
|
||||
a<!OVERLOAD_RESOLUTION_AMBIGUITY!>--<!>
|
||||
a<!NONE_APPLICABLE!>--<!>
|
||||
bar(::a)
|
||||
}
|
||||
when (condition) {
|
||||
true -> a = 87
|
||||
false -> a = 65
|
||||
}
|
||||
val x by <!DELEGATE_SPECIAL_FUNCTION_AMBIGUITY!>a<!>
|
||||
val x by <!DELEGATE_SPECIAL_FUNCTION_NONE_APPLICABLE!>a<!>
|
||||
|
||||
change {
|
||||
a = 99
|
||||
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
// !OPT_IN: kotlin.RequiresOptIn
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
class TypeDefinition<KotlinType : Any> {
|
||||
fun parse(parser: (serializedValue: String) -> KotlinType?): Unit = TODO()
|
||||
fun serialize(parser: (value: KotlinType) -> Any?): Unit = TODO()
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalTypeInference::class)
|
||||
fun <KotlinType : Any> defineType(definition: TypeDefinition<KotlinType>.() -> Unit): Unit = TODO()
|
||||
|
||||
fun main() {
|
||||
defineType {
|
||||
parse { it.toInt() }
|
||||
serialize { <!BUILDER_INFERENCE_STUB_RECEIVER!>it.toString()<!> }
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,3 @@
|
||||
// FIR_IDENTICAL
|
||||
// !OPT_IN: kotlin.RequiresOptIn
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
|
||||
Reference in New Issue
Block a user