从 Kotlin 2.2.0 开始,上下文接收器已被上下文形参取代。 此检查有助于将已启用上下文接收器但尚未迁移到上下文形参语法的项目从上下文接收器迁移到上下文形参。
示例:
context(MutableList<String>, C)
private fun foo() {
add("new")
bar()
baz()
}
class C {
fun bar() {}
}
fun C.baz() {}
迁移后:
context(strings: MutableList<String>, c: C)
private fun foo() {
strings.add("new")
c.bar()
c.baz()
}
class C {
fun bar() {}
}
fun C.baz() {}