satymale’s diary

日々の忘備録

F# 署名ファイル

意味が分からなくてハマったので覚書。

Hoge.fsi、Hoge.fsといったように署名と実装のファイル名が一致していないと、下記のようなエラーメッセージが出てうまくビルドできない。

The signature file '※ここにファイル名' does not have a corresponding implementation file. If an implementation file exists then check the 'module' and 'namespace' declarations in the signature and implementation files match.

このページが無かったら絶対に分からなかった。。 github.com

...スッキリして実践F#見直したらP355に書いてあった。orz

各実装は個別のファイルに記述して、署名は1ファイルで俯瞰して見れたら便利だと思ったのだけど、それをやろうと思ったら実装ファイル1つにしないと無理なのか・・・(コンパイラオプション--sigで1ファイルに出力されるからてっきり出来るのだと)