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

Harendra Kumar harendra.kumar at gmail.com
Sat Dec 2 20:24:03 UTC 2017


Also, "-ddump-hi" dumps the same information at compile time.

-harendra

On 3 December 2017 at 01:50, Harendra Kumar <harendra.kumar at gmail.com>
wrote:

> GHC has a "--show-iface" option which pretty prints the ".hi" file. Not
> sure if it works for your use-case but it may be easier to parse the text
> displayed by this option.
>
> -harendra
>
> On 2 December 2017 at 21:29, Saurabh Nanda <saurabhnanda at gmail.com> wrote:
>
>> (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/haddo
>> ck/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.
>>
>>
>> _______________________________________________
>> ghc-devs mailing list
>> ghc-devs at haskell.org
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20171203/54e0b60d/attachment.html>


More information about the ghc-devs mailing list