我使用haddock并且不希望我的所有导出函数都显示在文档中.是否可以隐藏特定功能?我在http://www.haskell.org/haddock/doc/html/module-attributes.html找到了prune属性,但这不是我想要的,因为一些要导出的函数没有文档注释.
假设您当前的模块是Foo.Bar
,一种解决方案是将其分解为Foo.Bar
and Foo.Bar.Internal
。您可以将与您不想导出的功能相关的所有定义(甚至可能是所有定义)移入Foo.Bar.Internal
。然后,在中Foo.Bar
,您将仅重新导出您希望世界看到的定义。
这种方法有两个优点。它使您可以导出所需的所有内容,同时仍然为用户提供明确的信号,表明不应使用某些功能。它还可以让您在Internal
模块内部记录特殊功能,这将很有用(如果仅对您将来的:P有用)。
您可能根本无法导出文件,从而Foo.Bar.Internal
将.cabal
文件隐藏起来。但是,这不一定是最好的方法。看一下如何,为什么以及何时使用“ .Internal”模块模式的答案?,尤其是luqui的。
归档时间: |
|
查看次数: |
522 次 |
最近记录: |