我有很多方法,比如
def foo(..., ..., runFinalizer: Boolean = true)
(implicit finalizer: Finalizer): Result = ...
但是当我运行 scaladoc(使用 sbt)时,它没有记录runFinalizer
具有默认值的文件。这是相当有问题的,因为用户将参数设置为false
很少,并且生成的文档没有显示它可以省略。
到目前为止,我有两种解决方案,没有一种完全令人满意:
runFinalizer
记录可以在其@param
块内省略的事实。它会有所帮助,但会导致在文档中的许多地方重复这样的句子,并且用户可能会忽略它。- 创建该方法的两个变体,一个有
runFinalizers
(没有默认值),一个没有。但这会不必要地使方法数量增加一倍,并使代码和文档变得混乱。