<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!--Rendered using the Haskell Html Library v0.2--> <HTML ><HEAD ><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8" ><TITLE >LoadIface</TITLE ><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css" ><SCRIPT SRC="haddock-util.js" TYPE="text/javascript" ></SCRIPT ><SCRIPT TYPE="text/javascript" >window.onload = function () {setSynopsis("mini_LoadIface.html")};</SCRIPT ></HEAD ><BODY ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="topbar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title" >ghc-6.12.3: The GHC API</TD ><TD CLASS="topbut" ><A HREF="src/LoadIface.html" >Source code</A ></TD ><TD CLASS="topbut" ><A HREF="index.html" >Contents</A ></TD ><TD CLASS="topbut" ><A HREF="doc-index.html" >Index</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="modulebar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><FONT SIZE="6" >LoadIface</FONT ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Synopsis</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="#v%3AloadInterface" >loadInterface</A > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="TcRnTypes.html#t%3AWhereFrom" >WhereFrom</A > -> <A HREF="TcRnTypes.html#t%3AIfM" >IfM</A > lcl (<A HREF="Maybes.html#t%3AMaybeErr" >MaybeErr</A > <A HREF="ErrUtils.html#t%3AMessage" >Message</A > <A HREF="HscTypes.html#t%3AModIface" >ModIface</A >)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AloadInterfaceForName" >loadInterfaceForName</A > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Name.html#t%3AName" >Name</A > -> <A HREF="TcRnTypes.html#t%3ATcRn" >TcRn</A > <A HREF="HscTypes.html#t%3AModIface" >ModIface</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AloadWiredInHomeIface" >loadWiredInHomeIface</A > :: <A HREF="Name.html#t%3AName" >Name</A > -> <A HREF="TcRnTypes.html#t%3AIfM" >IfM</A > lcl <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AloadSrcInterface" >loadSrcInterface</A > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="HscTypes.html#t%3AIsBootInterface" >IsBootInterface</A > -> <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="FastString.html#t%3AFastString" >FastString</A > -> <A HREF="TcRnTypes.html#t%3ARnM" >RnM</A > <A HREF="HscTypes.html#t%3AModIface" >ModIface</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AloadSysInterface" >loadSysInterface</A > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="TcRnTypes.html#t%3AIfM" >IfM</A > lcl <A HREF="HscTypes.html#t%3AModIface" >ModIface</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AloadUserInterface" >loadUserInterface</A > :: <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="TcRnTypes.html#t%3AIfM" >IfM</A > lcl <A HREF="HscTypes.html#t%3AModIface" >ModIface</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AloadOrphanModules" >loadOrphanModules</A > :: [<A HREF="Module.html#t%3AModule" >Module</A >] -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > -> <A HREF="TcRnTypes.html#t%3ATcM" >TcM</A > <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfindAndReadIface" >findAndReadIface</A > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="HscTypes.html#t%3AIsBootInterface" >IsBootInterface</A > -> <A HREF="TcRnTypes.html#t%3ATcRnIf" >TcRnIf</A > gbl lcl (<A HREF="Maybes.html#t%3AMaybeErr" >MaybeErr</A > <A HREF="ErrUtils.html#t%3AMessage" >Message</A > (<A HREF="HscTypes.html#t%3AModIface" >ModIface</A >, <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A >))</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AreadIface" >readIface</A > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A > -> <A HREF="HscTypes.html#t%3AIsBootInterface" >IsBootInterface</A > -> <A HREF="TcRnTypes.html#t%3ATcRnIf" >TcRnIf</A > gbl lcl (<A HREF="Maybes.html#t%3AMaybeErr" >MaybeErr</A > <A HREF="ErrUtils.html#t%3AMessage" >Message</A > <A HREF="HscTypes.html#t%3AModIface" >ModIface</A >)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AloadDecls" >loadDecls</A > :: <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > -> [(<A HREF="Fingerprint.html#t%3AFingerprint" >Fingerprint</A >, <A HREF="IfaceSyn.html#t%3AIfaceDecl" >IfaceDecl</A >)] -> <A HREF="TcRnTypes.html#t%3AIfL" >IfL</A > [(<A HREF="Name.html#t%3AName" >Name</A >, <A HREF="Type.html#t%3ATyThing" >TyThing</A >)]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AinitExternalPackageState" >initExternalPackageState</A > :: <A HREF="HscTypes.html#t%3AExternalPackageState" >ExternalPackageState</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AifaceStats" >ifaceStats</A > :: <A HREF="HscTypes.html#t%3AExternalPackageState" >ExternalPackageState</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprModIface" >pprModIface</A > :: <A HREF="HscTypes.html#t%3AModIface" >ModIface</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AshowIface" >showIface</A > :: <A HREF="HscTypes.html#t%3AHscEnv" >HscEnv</A > -> <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A > -> <A HREF="../base-4.2.0.2/System-IO.html#t%3AIO" >IO</A > <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Documentation</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:loadInterface" ><A NAME="v%3AloadInterface" ></A ></A ><B >loadInterface</B > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="TcRnTypes.html#t%3AWhereFrom" >WhereFrom</A > -> <A HREF="TcRnTypes.html#t%3AIfM" >IfM</A > lcl (<A HREF="Maybes.html#t%3AMaybeErr" >MaybeErr</A > <A HREF="ErrUtils.html#t%3AMessage" >Message</A > <A HREF="HscTypes.html#t%3AModIface" >ModIface</A >)</TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#loadInterface" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:loadInterfaceForName" ><A NAME="v%3AloadInterfaceForName" ></A ></A ><B >loadInterfaceForName</B > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Name.html#t%3AName" >Name</A > -> <A HREF="TcRnTypes.html#t%3ATcRn" >TcRn</A > <A HREF="HscTypes.html#t%3AModIface" >ModIface</A ></TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#loadInterfaceForName" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Loads the interface for a given Name. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:loadWiredInHomeIface" ><A NAME="v%3AloadWiredInHomeIface" ></A ></A ><B >loadWiredInHomeIface</B > :: <A HREF="Name.html#t%3AName" >Name</A > -> <A HREF="TcRnTypes.html#t%3AIfM" >IfM</A > lcl <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#loadWiredInHomeIface" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >An <TT ><A HREF="TcRnTypes.html#t%3AIfM" >IfM</A ></TT > function to load the home interface for a wired-in thing, so that we're sure that we see its instance declarations and rules See Note [Loading instances for wired-in things] in TcIface </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:loadSrcInterface" ><A NAME="v%3AloadSrcInterface" ></A ></A ><B >loadSrcInterface</B > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="HscTypes.html#t%3AIsBootInterface" >IsBootInterface</A > -> <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="FastString.html#t%3AFastString" >FastString</A > -> <A HREF="TcRnTypes.html#t%3ARnM" >RnM</A > <A HREF="HscTypes.html#t%3AModIface" >ModIface</A ></TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#loadSrcInterface" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Load the interface corresponding to an <TT >import</TT > directive in source code. On a failure, fail in the monad with an error message. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:loadSysInterface" ><A NAME="v%3AloadSysInterface" ></A ></A ><B >loadSysInterface</B > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="TcRnTypes.html#t%3AIfM" >IfM</A > lcl <A HREF="HscTypes.html#t%3AModIface" >ModIface</A ></TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#loadSysInterface" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Loads a system interface and throws an exception if it fails </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:loadUserInterface" ><A NAME="v%3AloadUserInterface" ></A ></A ><B >loadUserInterface</B > :: <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="TcRnTypes.html#t%3AIfM" >IfM</A > lcl <A HREF="HscTypes.html#t%3AModIface" >ModIface</A ></TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#loadUserInterface" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Loads a user interface and throws an exception if it fails. The first parameter indicates whether we should import the boot variant of the module </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:loadOrphanModules" ><A NAME="v%3AloadOrphanModules" ></A ></A ><B >loadOrphanModules</B > :: [<A HREF="Module.html#t%3AModule" >Module</A >] -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > -> <A HREF="TcRnTypes.html#t%3ATcM" >TcM</A > <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#loadOrphanModules" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Load interfaces for a collection of orphan modules. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:findAndReadIface" ><A NAME="v%3AfindAndReadIface" ></A ></A ><B >findAndReadIface</B > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="HscTypes.html#t%3AIsBootInterface" >IsBootInterface</A > -> <A HREF="TcRnTypes.html#t%3ATcRnIf" >TcRnIf</A > gbl lcl (<A HREF="Maybes.html#t%3AMaybeErr" >MaybeErr</A > <A HREF="ErrUtils.html#t%3AMessage" >Message</A > (<A HREF="HscTypes.html#t%3AModIface" >ModIface</A >, <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A >))</TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#findAndReadIface" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:readIface" ><A NAME="v%3AreadIface" ></A ></A ><B >readIface</B > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A > -> <A HREF="HscTypes.html#t%3AIsBootInterface" >IsBootInterface</A > -> <A HREF="TcRnTypes.html#t%3ATcRnIf" >TcRnIf</A > gbl lcl (<A HREF="Maybes.html#t%3AMaybeErr" >MaybeErr</A > <A HREF="ErrUtils.html#t%3AMessage" >Message</A > <A HREF="HscTypes.html#t%3AModIface" >ModIface</A >)</TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#readIface" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:loadDecls" ><A NAME="v%3AloadDecls" ></A ></A ><B >loadDecls</B > :: <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > -> [(<A HREF="Fingerprint.html#t%3AFingerprint" >Fingerprint</A >, <A HREF="IfaceSyn.html#t%3AIfaceDecl" >IfaceDecl</A >)] -> <A HREF="TcRnTypes.html#t%3AIfL" >IfL</A > [(<A HREF="Name.html#t%3AName" >Name</A >, <A HREF="Type.html#t%3ATyThing" >TyThing</A >)]</TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#loadDecls" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:initExternalPackageState" ><A NAME="v%3AinitExternalPackageState" ></A ></A ><B >initExternalPackageState</B > :: <A HREF="HscTypes.html#t%3AExternalPackageState" >ExternalPackageState</A ></TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#initExternalPackageState" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:ifaceStats" ><A NAME="v%3AifaceStats" ></A ></A ><B >ifaceStats</B > :: <A HREF="HscTypes.html#t%3AExternalPackageState" >ExternalPackageState</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#ifaceStats" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprModIface" ><A NAME="v%3ApprModIface" ></A ></A ><B >pprModIface</B > :: <A HREF="HscTypes.html#t%3AModIface" >ModIface</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#pprModIface" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:showIface" ><A NAME="v%3AshowIface" ></A ></A ><B >showIface</B > :: <A HREF="HscTypes.html#t%3AHscEnv" >HscEnv</A > -> <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A > -> <A HREF="../base-4.2.0.2/System-IO.html#t%3AIO" >IO</A > <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ><TD CLASS="declbut" ><A HREF="src/LoadIface.html#showIface" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Read binary interface, and print it out </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="botbar" >Produced by <A HREF="http://www.haskell.org/haddock/" >Haddock</A > version 2.6.1</TD ></TR ></TABLE ></BODY ></HTML >