相关疑难解决方法(0)

图书馆支持Scala的NotNull特性

注意:从Scala 2.11开始,NotNull不推荐使用.

据我所知,如果你想让一个引用类型不可为空,你必须混合魔法NotNull特性,编译器会自动阻止你在其中放入null-able值.例如,请参阅此邮件列表线程.

缺乏的是,对非可空类型的图书馆支持不错.如果我想编写一个不需要直接连接java代码的软件包,并且我希望防止此软件包中的所有类型null默认使用,我别无选择,只能重新定义所有构建变量,如此

//can't actually do that, but just to give the general idea
class NString extends String with NotNull
class NMap[X,Y] extends Map[X,Y] with NotNull
...
Run Code Online (Sandbox Code Playgroud)

我希望scala有(作为编译器插件或库)选项供我编写

import collections.notnull._
Run Code Online (Sandbox Code Playgroud)

为了轻松禁止null在特定的scala文件中使用.

是否有一个选项可以轻松强制标准库中的许多有用类型不可为空?

scala notnull

14
推荐指数
1
解决办法
3170
查看次数

标签 统计

notnull ×1

scala ×1