How to load & parse an HI (interface) file?

Saurabh Nanda saurabhnanda at gmail.com
Sat Dec 2 15:59:17 UTC 2017


(GHC newbie alert -- is this the right mailing list for these kind of
questions?)

I"m writing some code to figure out all the instances of particular
type-classes and after exploring a lot of options (hlint, haskell-src-exts,
annotations, doctests, etc), I realized that the compiler had already
figured it out and written it to disk for me!

More digging led me to
https://www.stackage.org/haddock/lts-9.0/ghc-8.0.2/LoadIface.html#v:loadSrcInterface
after which I got stuck. How does one call this function? Specifically:

* What is SDoc and how to construct a reasonable value for this argument?
* IsBootInterface would mostly be False, right?
* What does `Maybe FastString` represent and how does one construct it?
* Finally how does one evaluate the resulting monadic action to get access
to the underlying `ModIface`?

-- Saurabh.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20171202/cf2f2dbc/attachment.html>


More information about the ghc-devs mailing list