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成神之路

版权声明:
作者:cc
链接:https://www.techfm.club/p/24453.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>