3

我想知道您如何ModuleName使用 API 确定您刚刚在 ghc 中加载的文件。

如果您查看 API 的文档,他们总是假设您在加载文件之前知道模块名称。

我尝试对依赖图进行顶部排序并在那里选择最后一个模块,但这似乎并不总是返回加载的文件。

我之前能够做到的方法是修改 GHC 源代码以将此信息存储在HscEnv.

如果调用load返回它会很好,但肯定有办法做到这一点,因为 GHCi 在加载文件时知道这一点。

4

1 回答 1

1

haskell-src-exts包具有类型为 的parseFile函数parseFile :: FilePath -> IO (ParseResult Module)。该Module类型有一个模块名称字段。

于 2012-08-20T19:25:10.077 回答