1

haddock を使用して github ライブラリのドキュメントを生成しようとしています。入力したコードは次のとおりです。

$ find -name '*.hs' | xargs haddock --html -o docs
src/Reflex/Dom/Xhr.hs:154:0:
     error: missing binary operator before token "("
     #if MIN_VERSION_aeson(1,0,0)
     ^

Xhr.hs次に、ソース コードの 154 行目の関連セクションを調べました。

import Data.Aeson
#if MIN_VERSION_aeson(1,0,0)
import Data.Aeson.Text
#else
import Data.Aeson.Encode
#endif

私は知りませんでしたし、#ifHaskellの一部でしたが、意味は推測できました。バージョンに応じて、コードは または のいずれかをインポートする必要があります。念のため、バージョンを調べました:#else#endifAeson.TextAeson.Encode

$ ghc-pkg list | grep aeson
    aeson-0.11.3.0

これは、ハドックを困難にするのに十分でした。情報ページは、ライブラリdocsの詳細が入力されるのを待っているいくつかの空の html ファイルを含むというフォルダーに送信されます。Reflex.Dom

4

1 に答える 1