【发布时间】:2012-03-01 11:54:55
【问题描述】:
在开源项目中,我看到以下两种编写规范的方式:
cmets 中的规格
@spec start_link() -> {ok, pid()}
源代码中的规范
-spec start_link() -> {ok, pid()}
有什么区别?一个比另一个更受欢迎吗?
【问题讨论】:
在开源项目中,我看到以下两种编写规范的方式:
cmets 中的规格
@spec start_link() -> {ok, pid()}
源代码中的规范
-spec start_link() -> {ok, pid()}
有什么区别?一个比另一个更受欢迎吗?
【问题讨论】:
注释 (@spec) 版本早于源代码 (-spec) 版本。后者更可取。
注意:虽然下面描述的语法仍然可以使用 对于指定函数,我们推荐 Erlang 规范为 Types and Function Specification 中描述的应该添加到 源代码代替。这样透析器的分析可以 在保持文档一致性的过程中使用 最新。除非还有一个 Erlang 规范,否则将使用 函数规范(@spec 标记后跟类型)具有相同的 名字。
【讨论】: