如何使用反射阅读Scala文档

时间:2019-06-14 14:32:40

标签: scala scaladoc

无论如何,我们都可以使用反射来阅读scala文档注释。我的要求是读取@group标记值,并使用它来计算每个组有多少功能

1 个答案:

答案 0 :(得分:4)

否,您不能使用Scala反射来访问文档注释。原因很简单:注释在定义上几乎不是程序的一部分。因此,通过反射在逻辑上不可能可用。

例如,在Python中,可以从正在运行的程序中获取文档(实际上,即使不使用反射),因为该文档并未隐藏在注释中,而是仅分配给正在记录的对象的字段。许多Lips(例如Clojure)以及Ioke和Seph也是如此。

在Newspeak中,可以使用反射来使用他们所谓的“评论”,但这是因为他们所谓的“评论”并不是真正的评论,它更像是可以附加到对象的任意元数据。实际上,它与Scala中的注释比注释更相似。

在Scala中,文档以注释形式编写,注释不属于程序的一部分(它们在字面上与Scala Language Specification中的空格等效),因此,不能可能是该程序的一部分,因此可能无法通过反射进行访问。