¿Cómo puedo encontrar una descripción de los indicadores/opciones del compilador scala?


¿Cómo puedo encontrar todos los indicadores de la última versión de scalac? Después de buscar en Google durante horas solo he encontrado desactualizado docs . (por ejemplo, ni siquiera mencionan la bandera "-feature").

¿Hay alguna forma de obtener la lista de indicadores del compilador con descripciones de scalac, o cualquier otra cosa?

Author: Michael Zajac, 2013-09-04

2 answers

Lo más cercano que he podido encontrar son los archivos fuente relevantes para el compilador. Desafortunadamente, las opciones se distribuyen entre varios archivos. A partir de este escrito, se desglosa así:

Por supuesto, estos serán para la versión de desarrollo actual del compilador, por lo que si desea opciones para una versión específica de scalac, necesitará usar la rama " branch" menú desplegable para ver la etiqueta de versión correcta.

 23
Author: Christopher Currie,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-05-16 03:16:57

Editar: Se ha publicado la documentación para Las opciones del compilador de Scala.

La mayoría de nosotros nos las arreglamos con scalac -help, scalac -X y scalac -Y.

No te olvides de scala -help, también.

Editar: sbt el usuario puede hacer lo habitual:

> 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]

Al menos la página de manual se actualizó recientemente:

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

 25
Author: som-snytt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-06-21 20:46:13