|
|
1
12
New type inference 允许您创建空安全编译时检查生成器:
用例:
现在,您可以添加DSL功能:
DSL用例:
最后,在2019年JetBrains开放日,据说Kotlin团队研究了合同,并试图实施合同,以创建具有所需字段的安全DSL。 Here 是俄语的谈话录音。这个功能甚至不是实验性的,所以 也许它永远不会被添加到语言中。 |
|
|
2
4
如果你是为Android开发的,我写了一个轻量级的linter来验证强制性的DSL属性。
要解决您的用例,您只需要添加注释
你可以看看这里: https://github.com/hananrh/dslint/ |
|
|
3
0
简单地说,如果在数据块之后DLS中没有定义异常,则抛出异常
或者,如果您想在构建时强制执行它,只要让它在没有定义的情况下向外部块返回一些无用的东西,比如null。
我猜你要走了 this example 因此,地址可能是更好的例子:
但是,如果我们想确保所有事情都被定义好了,但又想让你按任何顺序去做呢 和 在编译时中断。简单,有两种类型!
通过这种方式,您可以得到要构建的非严格类型,但最好在最后减少null。这是个有趣的问题,谢谢。 |
|
|
A. Cedano · 如何在UIState中包含错误案例? 1 年前 |
|
Murilo · Jetpack编写导航栏项目图标 1 年前 |
|
zplot · 使用具有抽象嵌套类的泛型时类型不匹配 1 年前 |