Kotlin 所谓DSL 领域专用语言(Domain Specified Language)
class Context {
var info = "你好呀,松江"
fun toast(str: String) {
println("toast:${str}")
}
}
inline fun Context.apply5(lambda: Context.(String) -> Unit): Context {
lambda(info)
return this
}
fun main() {
Context().apply5 {
println(it)//结果:你好呀,松江
toast(it)//结果:toast:你好呀,松江
false
}
}
其实apply5函数,就是DSL编程范式,定义输入输出等规则:
1.定义整个lambda规则标准,输入 必须是Context才可以调用ap
Kotlin 所谓DSL 领域专用语言(Domain Specified Language)最先出现在Python成神之路。
共有 0 条评论