3

ModuleNameAPIを使用してghcにロードしたばかりのファイルをどのように判断するのだろうかと思っていました。

API のドキュメントを見ると、ファイルをロードする前にモジュール名を知っていると常に想定されています。

依存関係グラフを上位で並べ替えて最後のモジュールを選択しようとしましたが、ロードされたファイルが常に返されるとは限りません。

私が以前に実行できた方法は、GHC ソース コードを変更して、この情報をHscEnv.

への呼び出しがloadそれを返すならいいのですが、GHCi がファイルをロードするときにこれを知っているので、すでにそれを行う方法があるに違いありません。

4

1 に答える 1

1

haskell-src-extsパッケージには type のparseFile関数がありparseFile :: FilePath -> IO (ParseResult Module)ます。Moduleタイプには、モジュールの名前のフィールドがあります。

于 2012-08-20T19:25:10.077 に答える