如何找到scala编译器标志/选项的描述



如何找到最新scalac版本的所有标志?在谷歌上搜索了几个小时后,我只找到了过时的文档。(例如,他们甚至没有提到"-feature"标志)。

有没有任何方法可以从scalac或其他任何东西中获得带有描述的编译器标志列表?

编辑:Scala编译器选项文档已经发布。

我们中的大多数人都能通过scalac -helpscalac -Xscalac -Y

也别忘了scala -help

编辑:sbt用户可以做通常的:

> set scalacOptions in Compile += "-X"
> compile
[snip]
[info]   -Xcheck-null                   Warn upon selection of nullable reference.
[info]   -Xcheckinit                    Wrap field accessors to throw an exception on uninitialized access.
[info]   -Xdisable-assertions           Generate no assertions or assumptions.
[info]   -Xdivergence211                Turn on the 2.11 behavior of implicit divergence not terminating recursive implicit searches (SI-7291).
[info]   -Xelide-below <n>              Calls to @elidable methods are omitted if method priority is lower than argument
[info]   -Xexperimental                 Enable experimental extensions.
[info]   -Xfatal-warnings               Fail the compilation if there are any warnings.
[snip]

至少手册页最近更新了:

https://issues.scala-lang.org/browse/SI-7824

我能找到的最接近的是编译器的相关源文件。不幸的是,选项分布在几个文件中。截至本文撰写之时,它是这样分解的:

  • StandardScalaSettings(用于基本标志)
  • ScalaSettings(用于高级标志)

这些当然适用于编译器的当前开发版本,因此,如果您想要scalac的特定版本的选项,则需要使用"分支"下拉菜单来查看正确的版本标记。

由于Dotty(Scala 3),这些选项似乎处于不同的位置。

  • ScalaSettings(几乎所有标志)
  • 语言(-language:标志)

遗憾的是,当键入scalac -language:help时,语言标志似乎不再像2.13.8那样显示,不知道为什么。

我相信这些都是多蒂的突出选择。

相关内容

  • 没有找到相关文章

最新更新