<!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 >Module</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_Module.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/Module.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" >Module</FONT ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" ><B >Contents</B ></TD ></TR ><TR ><TD ><DL ><DT ><A HREF="#1" >The ModuleName type </A ></DT ><DT ><A HREF="#2" >The PackageId type </A ></DT ><DT ><A HREF="#3" >Wired-in PackageIds </A ></DT ><DT ><A HREF="#4" >The Module type </A ></DT ><DT ><A HREF="#5" >The ModuleLocation type </A ></DT ><DT ><A HREF="#6" >Module mappings </A ></DT ><DT ><A HREF="#7" >ModuleName mappings </A ></DT ><DT ><A HREF="#8" >Sets of Modules </A ></DT ></DL ></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" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AModuleName" >ModuleName</A > </TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprModuleName" >pprModuleName</A > :: <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmoduleNameFS" >moduleNameFS</A > :: <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="FastString.html#t%3AFastString" >FastString</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmoduleNameString" >moduleNameString</A > :: <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmoduleNameSlashes" >moduleNameSlashes</A > :: <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmkModuleName" >mkModuleName</A > :: <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmkModuleNameFS" >mkModuleNameFS</A > :: <A HREF="FastString.html#t%3AFastString" >FastString</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AstableModuleNameCmp" >stableModuleNameCmp</A > :: <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrdering" >Ordering</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3APackageId" >PackageId</A > </TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfsToPackageId" >fsToPackageId</A > :: <A HREF="FastString.html#t%3AFastString" >FastString</A > -> <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApackageIdFS" >packageIdFS</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A > -> <A HREF="FastString.html#t%3AFastString" >FastString</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AstringToPackageId" >stringToPackageId</A > :: <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A > -> <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApackageIdString" >packageIdString</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A > -> <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AstablePackageIdCmp" >stablePackageIdCmp</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A > -> <A HREF="Module.html#t%3APackageId" >PackageId</A > -> <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrdering" >Ordering</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AprimPackageId" >primPackageId</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AintegerPackageId" >integerPackageId</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AbasePackageId" >basePackageId</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ArtsPackageId" >rtsPackageId</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Ahaskell98PackageId" >haskell98PackageId</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AthPackageId" >thPackageId</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AdphSeqPackageId" >dphSeqPackageId</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AdphParPackageId" >dphParPackageId</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmainPackageId" >mainPackageId</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AModule" >Module</A > </TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmodulePackageId" >modulePackageId</A > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmoduleName" >moduleName</A > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprModule" >pprModule</A > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmkModule" >mkModule</A > :: <A HREF="Module.html#t%3APackageId" >PackageId</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="Module.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AstableModuleCmp" >stableModuleCmp</A > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrdering" >Ordering</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AModLocation" >ModLocation</A > = <A HREF="#v%3AModLocation" >ModLocation</A > {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="recfield" ><A HREF="#v%3Aml_hs_file" >ml_hs_file</A > :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A ></TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3Aml_hi_file" >ml_hi_file</A > :: <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A ></TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3Aml_obj_file" >ml_obj_file</A > :: <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A ></TD ></TR ></TABLE >}</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AaddBootSuffix" >addBootSuffix</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%3AFilePath" >FilePath</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AaddBootSuffix_maybe" >addBootSuffix_maybe</A > :: <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</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%3AFilePath" >FilePath</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AaddBootSuffixLocn" >addBootSuffixLocn</A > :: <A HREF="Module.html#t%3AModLocation" >ModLocation</A > -> <A HREF="Module.html#t%3AModLocation" >ModLocation</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AModuleEnv" >ModuleEnv</A > elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AelemModuleEnv" >elemModuleEnv</A > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AextendModuleEnv" >extendModuleEnv</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModule" >Module</A > -> a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AextendModuleEnvList" >extendModuleEnvList</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [(<A HREF="Module.html#t%3AModule" >Module</A >, a)] -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AextendModuleEnvList_C" >extendModuleEnvList_C</A > :: (a -> a -> a) -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [(<A HREF="Module.html#t%3AModule" >Module</A >, a)] -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AplusModuleEnv_C" >plusModuleEnv_C</A > :: (a -> a -> a) -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AdelModuleEnvList" >delModuleEnvList</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [<A HREF="Module.html#t%3AModule" >Module</A >] -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AdelModuleEnv" >delModuleEnv</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AplusModuleEnv" >plusModuleEnv</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AlookupModuleEnv" >lookupModuleEnv</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AlookupWithDefaultModuleEnv" >lookupWithDefaultModuleEnv</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> a -> <A HREF="Module.html#t%3AModule" >Module</A > -> a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmapModuleEnv" >mapModuleEnv</A > :: (a -> b) -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > b</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmkModuleEnv" >mkModuleEnv</A > :: [(<A HREF="Module.html#t%3AModule" >Module</A >, a)] -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AemptyModuleEnv" >emptyModuleEnv</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmoduleEnvKeys" >moduleEnvKeys</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [<A HREF="Module.html#t%3AModule" >Module</A >]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmoduleEnvElts" >moduleEnvElts</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [a]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmoduleEnvToList" >moduleEnvToList</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [(<A HREF="Module.html#t%3AModule" >Module</A >, a)]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AunitModuleEnv" >unitModuleEnv</A > :: <A HREF="Module.html#t%3AModule" >Module</A > -> a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AisEmptyModuleEnv" >isEmptyModuleEnv</A > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfoldModuleEnv" >foldModuleEnv</A > :: (a -> b -> b) -> b -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> b</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AextendModuleEnv_C" >extendModuleEnv_C</A > :: (a -> a -> a) -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModule" >Module</A > -> a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AfilterModuleEnv" >filterModuleEnv</A > :: (<A HREF="Module.html#t%3AModule" >Module</A > -> a -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A >) -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AModuleNameEnv" >ModuleNameEnv</A > elt = <A HREF="LazyUniqFM.html#t%3AUniqFM" >UniqFM</A > elt</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AModuleSet" >ModuleSet</A > = <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > <A HREF="Module.html#t%3AModule" >Module</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%3AemptyModuleSet" >emptyModuleSet</A > :: <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmkModuleSet" >mkModuleSet</A > :: [<A HREF="Module.html#t%3AModule" >Module</A >] -> <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmoduleSetElts" >moduleSetElts</A > :: <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A > -> [<A HREF="Module.html#t%3AModule" >Module</A >]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AextendModuleSet" >extendModuleSet</A > :: <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AelemModuleSet" >elemModuleSet</A > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A > -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="1" ><A NAME="1" >The ModuleName type </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:ModuleName" ><A NAME="t%3AModuleName" ></A ></A ><B >ModuleName</B > </TD ><TD CLASS="declbut" ><A HREF="src/Module.html#ModuleName" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A ModuleName is essentially a simple string, e.g. <TT >Data.List</TT >. </TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ModuleName')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ModuleName" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Unique.html#t%3AUniquable" >Uniquable</A > <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Binary.html#t%3ABinary" >Binary</A > <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ></TR ></TABLE ></DIV ></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:pprModuleName" ><A NAME="v%3ApprModuleName" ></A ></A ><B >pprModuleName</B > :: <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#pprModuleName" >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:moduleNameFS" ><A NAME="v%3AmoduleNameFS" ></A ></A ><B >moduleNameFS</B > :: <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="FastString.html#t%3AFastString" >FastString</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#moduleNameFS" >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:moduleNameString" ><A NAME="v%3AmoduleNameString" ></A ></A ><B >moduleNameString</B > :: <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#moduleNameString" >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:moduleNameSlashes" ><A NAME="v%3AmoduleNameSlashes" ></A ></A ><B >moduleNameSlashes</B > :: <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#moduleNameSlashes" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Returns the string version of the module name, with dots replaced by slashes </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:mkModuleName" ><A NAME="v%3AmkModuleName" ></A ></A ><B >mkModuleName</B > :: <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#mkModuleName" >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:mkModuleNameFS" ><A NAME="v%3AmkModuleNameFS" ></A ></A ><B >mkModuleNameFS</B > :: <A HREF="FastString.html#t%3AFastString" >FastString</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#mkModuleNameFS" >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:stableModuleNameCmp" ><A NAME="v%3AstableModuleNameCmp" ></A ></A ><B >stableModuleNameCmp</B > :: <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrdering" >Ordering</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#stableModuleNameCmp" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Compares module names lexically, rather than by their <TT ><A HREF="Unique.html#t%3AUnique" >Unique</A ></TT >s </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="2" ><A NAME="2" >The PackageId type </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:PackageId" ><A NAME="t%3APackageId" ></A ></A ><B >PackageId</B > </TD ><TD CLASS="declbut" ><A HREF="src/Module.html#PackageId" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Essentially just a string identifying a package, including the version: e.g. parsec-1.0 </TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:PackageId')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:PackageId" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Unique.html#t%3AUniquable" >Uniquable</A > <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Binary.html#t%3ABinary" >Binary</A > <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ></TR ></TABLE ></DIV ></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:fsToPackageId" ><A NAME="v%3AfsToPackageId" ></A ></A ><B >fsToPackageId</B > :: <A HREF="FastString.html#t%3AFastString" >FastString</A > -> <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#fsToPackageId" >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:packageIdFS" ><A NAME="v%3ApackageIdFS" ></A ></A ><B >packageIdFS</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A > -> <A HREF="FastString.html#t%3AFastString" >FastString</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#packageIdFS" >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:stringToPackageId" ><A NAME="v%3AstringToPackageId" ></A ></A ><B >stringToPackageId</B > :: <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A > -> <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#stringToPackageId" >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:packageIdString" ><A NAME="v%3ApackageIdString" ></A ></A ><B >packageIdString</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A > -> <A HREF="../base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#packageIdString" >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:stablePackageIdCmp" ><A NAME="v%3AstablePackageIdCmp" ></A ></A ><B >stablePackageIdCmp</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A > -> <A HREF="Module.html#t%3APackageId" >PackageId</A > -> <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrdering" >Ordering</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#stablePackageIdCmp" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Compares package ids lexically, rather than by their <TT ><A HREF="Unique.html#t%3AUnique" >Unique</A ></TT >s </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="3" ><A NAME="3" >Wired-in PackageIds </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="doc" ><P >Certain packages are known to the compiler, in that we know about certain entities that reside in these packages, and the compiler needs to declare static Modules and Names that refer to these packages. Hence the wired-in packages can't include version numbers, since we don't want to bake the version numbers of these packages into GHC. </P ><P >So here's the plan. Wired-in packages are still versioned as normal in the packages database, and you can still have multiple versions of them installed. However, for each invocation of GHC, only a single instance of each wired-in package will be recognised (the desired one is selected via <TT >-package</TT >/<TT >-hide-package</TT >), and GHC will use the unversioned <TT ><A HREF="Module.html#t%3APackageId" >PackageId</A ></TT > below when referring to it, including in .hi files and object file symbols. Unselected versions of wired-in packages will be ignored, as will any other package that depends directly or indirectly on it (much as if you had used <TT >-ignore-package</TT >). </P ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:primPackageId" ><A NAME="v%3AprimPackageId" ></A ></A ><B >primPackageId</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#primPackageId" >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:integerPackageId" ><A NAME="v%3AintegerPackageId" ></A ></A ><B >integerPackageId</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#integerPackageId" >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:basePackageId" ><A NAME="v%3AbasePackageId" ></A ></A ><B >basePackageId</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#basePackageId" >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:rtsPackageId" ><A NAME="v%3ArtsPackageId" ></A ></A ><B >rtsPackageId</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#rtsPackageId" >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:haskell98PackageId" ><A NAME="v%3Ahaskell98PackageId" ></A ></A ><B >haskell98PackageId</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#haskell98PackageId" >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:thPackageId" ><A NAME="v%3AthPackageId" ></A ></A ><B >thPackageId</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#thPackageId" >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:dphSeqPackageId" ><A NAME="v%3AdphSeqPackageId" ></A ></A ><B >dphSeqPackageId</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#dphSeqPackageId" >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:dphParPackageId" ><A NAME="v%3AdphParPackageId" ></A ></A ><B >dphParPackageId</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#dphParPackageId" >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:mainPackageId" ><A NAME="v%3AmainPackageId" ></A ></A ><B >mainPackageId</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#mainPackageId" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="4" ><A NAME="4" >The Module type </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:Module" ><A NAME="t%3AModule" ></A ></A ><B >Module</B > </TD ><TD CLASS="declbut" ><A HREF="src/Module.html#Module" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A Module is a pair of a <TT ><A HREF="Module.html#t%3APackageId" >PackageId</A ></TT > and a <TT ><A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TT >. </TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Module')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Module" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > <A HREF="Module.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > <A HREF="Module.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > <A HREF="Module.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Unique.html#t%3AUniquable" >Uniquable</A > <A HREF="Module.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Binary.html#t%3ABinary" >Binary</A > <A HREF="Module.html#t%3AModule" >Module</A ></TD ></TR ></TABLE ></DIV ></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:modulePackageId" ><A NAME="v%3AmodulePackageId" ></A ></A ><B >modulePackageId</B > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3APackageId" >PackageId</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#modulePackageId" >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:moduleName" ><A NAME="v%3AmoduleName" ></A ></A ><B >moduleName</B > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#moduleName" >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:pprModule" ><A NAME="v%3ApprModule" ></A ></A ><B >pprModule</B > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#pprModule" >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:mkModule" ><A NAME="v%3AmkModule" ></A ></A ><B >mkModule</B > :: <A HREF="Module.html#t%3APackageId" >PackageId</A > -> <A HREF="Module.html#t%3AModuleName" >ModuleName</A > -> <A HREF="Module.html#t%3AModule" >Module</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#mkModule" >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:stableModuleCmp" ><A NAME="v%3AstableModuleCmp" ></A ></A ><B >stableModuleCmp</B > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrdering" >Ordering</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#stableModuleCmp" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >This gives a stable ordering, as opposed to the Ord instance which gives an ordering based on the <TT ><A HREF="Unique.html#t%3AUnique" >Unique</A ></TT >s of the components, which may not be stable from run to run of the compiler. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="5" ><A NAME="5" >The ModuleLocation type </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:ModLocation" ><A NAME="t%3AModLocation" ></A ></A ><B >ModLocation</B > </TD ><TD CLASS="declbut" ><A HREF="src/Module.html#ModLocation" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Where a module lives on the file system: the actual locations of the .hs, .hi and .o files, if we have them </TD ></TR ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:ModLocation" ><A NAME="v%3AModLocation" ></A ></A ><B >ModLocation</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="body" COLSPAN="2" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:ml_hs_file" ><A NAME="v%3Aml_hs_file" ></A ></A ><B >ml_hs_file</B > :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ml_hi_file" ><A NAME="v%3Aml_hi_file" ></A ></A ><B >ml_hi_file</B > :: <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ml_obj_file" ><A NAME="v%3Aml_obj_file" ></A ></A ><B >ml_obj_file</B > :: <A HREF="../base-4.2.0.2/System-IO.html#t%3AFilePath" >FilePath</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ModLocation')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ModLocation" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="../base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > <A HREF="Module.html#t%3AModLocation" >ModLocation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputable" >Outputable</A > <A HREF="Module.html#t%3AModLocation" >ModLocation</A ></TD ></TR ></TABLE ></DIV ></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:addBootSuffix" ><A NAME="v%3AaddBootSuffix" ></A ></A ><B >addBootSuffix</B > :: <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%3AFilePath" >FilePath</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#addBootSuffix" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Add the <TT >-boot</TT > suffix to .hs, .hi and .o files </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:addBootSuffix_maybe" ><A NAME="v%3AaddBootSuffix_maybe" ></A ></A ><B >addBootSuffix_maybe</B > :: <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</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%3AFilePath" >FilePath</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#addBootSuffix_maybe" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Add the <TT >-boot</TT > suffix if the <TT >Bool</TT > argument is <TT >True</TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:addBootSuffixLocn" ><A NAME="v%3AaddBootSuffixLocn" ></A ></A ><B >addBootSuffixLocn</B > :: <A HREF="Module.html#t%3AModLocation" >ModLocation</A > -> <A HREF="Module.html#t%3AModLocation" >ModLocation</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#addBootSuffixLocn" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Add the <TT >-boot</TT > suffix to all file paths associated with the module </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="6" ><A NAME="6" >Module mappings </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:ModuleEnv" ><A NAME="t%3AModuleEnv" ></A ></A ><B >ModuleEnv</B > elt </TD ><TD CLASS="declbut" ><A HREF="src/Module.html#ModuleEnv" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" ><P >This is the package Id for the current program. It is the default package Id if you don't specify a package name. We don't add this prefix to symbol names, since there can be only one main package per program. </P ><P >A map keyed off of <TT ><A HREF="Module.html#t%3AModule" >Module</A ></TT >s </P ></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:elemModuleEnv" ><A NAME="v%3AelemModuleEnv" ></A ></A ><B >elemModuleEnv</B > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#elemModuleEnv" >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:extendModuleEnv" ><A NAME="v%3AextendModuleEnv" ></A ></A ><B >extendModuleEnv</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModule" >Module</A > -> a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#extendModuleEnv" >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:extendModuleEnvList" ><A NAME="v%3AextendModuleEnvList" ></A ></A ><B >extendModuleEnvList</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [(<A HREF="Module.html#t%3AModule" >Module</A >, a)] -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#extendModuleEnvList" >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:extendModuleEnvList_C" ><A NAME="v%3AextendModuleEnvList_C" ></A ></A ><B >extendModuleEnvList_C</B > :: (a -> a -> a) -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [(<A HREF="Module.html#t%3AModule" >Module</A >, a)] -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#extendModuleEnvList_C" >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:plusModuleEnv_C" ><A NAME="v%3AplusModuleEnv_C" ></A ></A ><B >plusModuleEnv_C</B > :: (a -> a -> a) -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#plusModuleEnv_C" >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:delModuleEnvList" ><A NAME="v%3AdelModuleEnvList" ></A ></A ><B >delModuleEnvList</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [<A HREF="Module.html#t%3AModule" >Module</A >] -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#delModuleEnvList" >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:delModuleEnv" ><A NAME="v%3AdelModuleEnv" ></A ></A ><B >delModuleEnv</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#delModuleEnv" >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:plusModuleEnv" ><A NAME="v%3AplusModuleEnv" ></A ></A ><B >plusModuleEnv</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#plusModuleEnv" >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:lookupModuleEnv" ><A NAME="v%3AlookupModuleEnv" ></A ></A ><B >lookupModuleEnv</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#lookupModuleEnv" >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:lookupWithDefaultModuleEnv" ><A NAME="v%3AlookupWithDefaultModuleEnv" ></A ></A ><B >lookupWithDefaultModuleEnv</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> a -> <A HREF="Module.html#t%3AModule" >Module</A > -> a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#lookupWithDefaultModuleEnv" >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:mapModuleEnv" ><A NAME="v%3AmapModuleEnv" ></A ></A ><B >mapModuleEnv</B > :: (a -> b) -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > b</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#mapModuleEnv" >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:mkModuleEnv" ><A NAME="v%3AmkModuleEnv" ></A ></A ><B >mkModuleEnv</B > :: [(<A HREF="Module.html#t%3AModule" >Module</A >, a)] -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#mkModuleEnv" >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:emptyModuleEnv" ><A NAME="v%3AemptyModuleEnv" ></A ></A ><B >emptyModuleEnv</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#emptyModuleEnv" >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:moduleEnvKeys" ><A NAME="v%3AmoduleEnvKeys" ></A ></A ><B >moduleEnvKeys</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [<A HREF="Module.html#t%3AModule" >Module</A >]</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#moduleEnvKeys" >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:moduleEnvElts" ><A NAME="v%3AmoduleEnvElts" ></A ></A ><B >moduleEnvElts</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [a]</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#moduleEnvElts" >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:moduleEnvToList" ><A NAME="v%3AmoduleEnvToList" ></A ></A ><B >moduleEnvToList</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> [(<A HREF="Module.html#t%3AModule" >Module</A >, a)]</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#moduleEnvToList" >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:unitModuleEnv" ><A NAME="v%3AunitModuleEnv" ></A ></A ><B >unitModuleEnv</B > :: <A HREF="Module.html#t%3AModule" >Module</A > -> a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#unitModuleEnv" >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:isEmptyModuleEnv" ><A NAME="v%3AisEmptyModuleEnv" ></A ></A ><B >isEmptyModuleEnv</B > :: <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#isEmptyModuleEnv" >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:foldModuleEnv" ><A NAME="v%3AfoldModuleEnv" ></A ></A ><B >foldModuleEnv</B > :: (a -> b -> b) -> b -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> b</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#foldModuleEnv" >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:extendModuleEnv_C" ><A NAME="v%3AextendModuleEnv_C" ></A ></A ><B >extendModuleEnv_C</B > :: (a -> a -> a) -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModule" >Module</A > -> a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#extendModuleEnv_C" >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:filterModuleEnv" ><A NAME="v%3AfilterModuleEnv" ></A ></A ><B >filterModuleEnv</B > :: (<A HREF="Module.html#t%3AModule" >Module</A > -> a -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A >) -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a -> <A HREF="Module.html#t%3AModuleEnv" >ModuleEnv</A > a</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#filterModuleEnv" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="7" ><A NAME="7" >ModuleName mappings </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:ModuleNameEnv" ><A NAME="t%3AModuleNameEnv" ></A ></A ><B >ModuleNameEnv</B > elt = <A HREF="LazyUniqFM.html#t%3AUniqFM" >UniqFM</A > elt</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#ModuleNameEnv" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >A map keyed off of <TT ><A HREF="Module.html#t%3AModuleName" >ModuleName</A ></TT >s (actually, their <TT ><A HREF="Unique.html#t%3AUnique" >Unique</A ></TT >s) </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="8" ><A NAME="8" >Sets of Modules </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:ModuleSet" ><A NAME="t%3AModuleSet" ></A ></A ><B >ModuleSet</B > = <A HREF="FiniteMap.html#t%3AFiniteMap" >FiniteMap</A > <A HREF="Module.html#t%3AModule" >Module</A > <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#ModuleSet" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >A set of <TT ><A HREF="Module.html#t%3AModule" >Module</A ></TT >s </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:emptyModuleSet" ><A NAME="v%3AemptyModuleSet" ></A ></A ><B >emptyModuleSet</B > :: <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#emptyModuleSet" >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:mkModuleSet" ><A NAME="v%3AmkModuleSet" ></A ></A ><B >mkModuleSet</B > :: [<A HREF="Module.html#t%3AModule" >Module</A >] -> <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#mkModuleSet" >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:moduleSetElts" ><A NAME="v%3AmoduleSetElts" ></A ></A ><B >moduleSetElts</B > :: <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A > -> [<A HREF="Module.html#t%3AModule" >Module</A >]</TD ><TD CLASS="declbut" ><A HREF="src/Module.html#moduleSetElts" >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:extendModuleSet" ><A NAME="v%3AextendModuleSet" ></A ></A ><B >extendModuleSet</B > :: <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A > -> <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#extendModuleSet" >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:elemModuleSet" ><A NAME="v%3AelemModuleSet" ></A ></A ><B >elemModuleSet</B > :: <A HREF="Module.html#t%3AModule" >Module</A > -> <A HREF="Module.html#t%3AModuleSet" >ModuleSet</A > -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/Module.html#elemModuleSet" >Source</A ></TD ></TR ></TABLE ></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 >