processModulesのドキュメントには次のように書かれています。
GHC API を使用してモジュールのリストを型チェックし、結果の構文木を処理することにより、インターフェイスとリンク環境を作成します。
そして、それが のコア機能ですhaddock
。したがって、ATM の質問に対する答えはNoです。
cabal build
異なるパラメーターを持つモジュールをタイプチェックするため(たとえば、CPP変数が有効になっている)cabal haddock
、まったく役に立ちませんhaddock
__HADDOCK__
依存関係グラフの後半にあるコードが、その時点より前のモジュールのドキュメント、特にインスタンスのリストを変更する可能性があるため、信頼性の高い増分ハドック生成を行うことは困難です。おそらく、モジュール インターフェイスをダンプできます。
最初のステップのコードをprocessModules
見ると、段階的に実行できる可能性があり、残りはグローバル情報を使用しています。
冗長性を最大にしてみて、と の間に--haddock-options=--verbosity=2
どれだけの時間が費やされたかを確認してください。Creating interfaces...
Attaching instances...