Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > da2ed07af0cf0f424d74f4cc6829a27c > files > 1163

ghc-ghc-devel-6.12.3-8.6.fc14.i686.rpm

<!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
>TcRnTypes</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_TcRnTypes.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="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"
>TcRnTypes</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"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ATcRnIf"
>TcRnIf</A
> a b c = <A HREF="IOEnv.html#t%3AIOEnv"
>IOEnv</A
> (<A HREF="TcRnTypes.html#t%3AEnv"
>Env</A
> a b) c</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ATcRn"
>TcRn</A
> a = <A HREF="TcRnTypes.html#t%3ATcRnIf"
>TcRnIf</A
> <A HREF="TcRnTypes.html#t%3ATcGblEnv"
>TcGblEnv</A
> <A HREF="TcRnTypes.html#t%3ATcLclEnv"
>TcLclEnv</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ATcM"
>TcM</A
> a = <A HREF="TcRnTypes.html#t%3ATcRn"
>TcRn</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ARnM"
>RnM</A
> a = <A HREF="TcRnTypes.html#t%3ATcRn"
>TcRn</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3AIfM"
>IfM</A
> lcl a = <A HREF="TcRnTypes.html#t%3ATcRnIf"
>TcRnIf</A
> <A HREF="TcRnTypes.html#t%3AIfGblEnv"
>IfGblEnv</A
> lcl a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3AIfL"
>IfL</A
> a = <A HREF="TcRnTypes.html#t%3AIfM"
>IfM</A
> <A HREF="TcRnTypes.html#t%3AIfLclEnv"
>IfLclEnv</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3AIfG"
>IfG</A
> a = <A HREF="TcRnTypes.html#t%3AIfM"
>IfM</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ATcRef"
>TcRef</A
> a = <A HREF="IOEnv.html#t%3AIORef"
>IORef</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AEnv"
>Env</A
> gbl lcl = <A HREF="#v%3AEnv"
>Env</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aenv_top"
>env_top</A
> :: <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aenv_us"
>env_us</A
> :: !(<A HREF="IOEnv.html#t%3AIORef"
>IORef</A
> <A HREF="UniqSupply.html#t%3AUniqSupply"
>UniqSupply</A
>)</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aenv_gbl"
>env_gbl</A
> :: gbl</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aenv_lcl"
>env_lcl</A
> :: lcl</TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3ATcGblEnv"
>TcGblEnv</A
>  = <A HREF="#v%3ATcGblEnv"
>TcGblEnv</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_mod"
>tcg_mod</A
> :: <A HREF="Module.html#t%3AModule"
>Module</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_src"
>tcg_src</A
> :: <A HREF="DriverPhases.html#t%3AHscSource"
>HscSource</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_rdr_env"
>tcg_rdr_env</A
> :: <A HREF="RdrName.html#t%3AGlobalRdrEnv"
>GlobalRdrEnv</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_default"
>tcg_default</A
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> [<A HREF="Type.html#t%3AType"
>Type</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_fix_env"
>tcg_fix_env</A
> :: <A HREF="HscTypes.html#t%3AFixityEnv"
>FixityEnv</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_field_env"
>tcg_field_env</A
> :: <A HREF="TcRnTypes.html#t%3ARecFieldEnv"
>RecFieldEnv</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_type_env"
>tcg_type_env</A
> :: <A HREF="HscTypes.html#t%3ATypeEnv"
>TypeEnv</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_type_env_var"
>tcg_type_env_var</A
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="HscTypes.html#t%3ATypeEnv"
>TypeEnv</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_inst_env"
>tcg_inst_env</A
> :: <A HREF="InstEnv.html#t%3AInstEnv"
>InstEnv</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_fam_inst_env"
>tcg_fam_inst_env</A
> :: <A HREF="FamInstEnv.html#t%3AFamInstEnv"
>FamInstEnv</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_exports"
>tcg_exports</A
> :: [<A HREF="HscTypes.html#t%3AAvailInfo"
>AvailInfo</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_imports"
>tcg_imports</A
> :: <A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_dus"
>tcg_dus</A
> :: <A HREF="NameSet.html#t%3ADefUses"
>DefUses</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_keep"
>tcg_keep</A
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="NameSet.html#t%3ANameSet"
>NameSet</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_inst_uses"
>tcg_inst_uses</A
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="NameSet.html#t%3ANameSet"
>NameSet</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_th_used"
>tcg_th_used</A
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_dfun_n"
>tcg_dfun_n</A
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="OccName.html#t%3AOccSet"
>OccSet</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_rn_exports"
>tcg_rn_exports</A
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> [<A HREF="SrcLoc.html#t%3ALocated"
>Located</A
> (<A HREF="HsImpExp.html#t%3AIE"
>IE</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_rn_imports"
>tcg_rn_imports</A
> :: [<A HREF="HsImpExp.html#t%3ALImportDecl"
>LImportDecl</A
> <A HREF="Name.html#t%3AName"
>Name</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_used_rdrnames"
>tcg_used_rdrnames</A
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> (<A HREF="../containers-0.3.0.0/Data-Set.html#t%3ASet"
>Set</A
> <A HREF="RdrName.html#t%3ARdrName"
>RdrName</A
>)</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_rn_decls"
>tcg_rn_decls</A
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> (<A HREF="HsDecls.html#t%3AHsGroup"
>HsGroup</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_binds"
>tcg_binds</A
> :: <A HREF="HsBinds.html#t%3ALHsBinds"
>LHsBinds</A
> <A HREF="Var.html#t%3AId"
>Id</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_warns"
>tcg_warns</A
> :: <A HREF="HscTypes.html#t%3AWarnings"
>Warnings</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_anns"
>tcg_anns</A
> :: [<A HREF="Annotations.html#t%3AAnnotation"
>Annotation</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_insts"
>tcg_insts</A
> :: [<A HREF="InstEnv.html#t%3AInstance"
>Instance</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_fam_insts"
>tcg_fam_insts</A
> :: [<A HREF="FamInstEnv.html#t%3AFamInst"
>FamInst</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_rules"
>tcg_rules</A
> :: [<A HREF="HsDecls.html#t%3ALRuleDecl"
>LRuleDecl</A
> <A HREF="Var.html#t%3AId"
>Id</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_fords"
>tcg_fords</A
> :: [<A HREF="HsDecls.html#t%3ALForeignDecl"
>LForeignDecl</A
> <A HREF="Var.html#t%3AId"
>Id</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_doc_hdr"
>tcg_doc_hdr</A
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="HsDoc.html#t%3ALHsDocString"
>LHsDocString</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_hpc"
>tcg_hpc</A
> :: <A HREF="HscTypes.html#t%3AAnyHpcUsage"
>AnyHpcUsage</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcg_main"
>tcg_main</A
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Name.html#t%3AName"
>Name</A
></TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3ATcLclEnv"
>TcLclEnv</A
>  = <A HREF="#v%3ATcLclEnv"
>TcLclEnv</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcl_loc"
>tcl_loc</A
> :: <A HREF="SrcLoc.html#t%3ASrcSpan"
>SrcSpan</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcl_ctxt"
>tcl_ctxt</A
> :: [<A HREF="TcRnTypes.html#t%3AErrCtxt"
>ErrCtxt</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcl_errs"
>tcl_errs</A
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="ErrUtils.html#t%3AMessages"
>Messages</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcl_th_ctxt"
>tcl_th_ctxt</A
> :: <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcl_arrow_ctxt"
>tcl_arrow_ctxt</A
> :: <A HREF="TcRnTypes.html#t%3AArrowCtxt"
>ArrowCtxt</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcl_rdr"
>tcl_rdr</A
> :: <A HREF="RdrName.html#t%3ALocalRdrEnv"
>LocalRdrEnv</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcl_env"
>tcl_env</A
> :: <A HREF="NameEnv.html#t%3ANameEnv"
>NameEnv</A
> <A HREF="TcRnTypes.html#t%3ATcTyThing"
>TcTyThing</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcl_tyvars"
>tcl_tyvars</A
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="TcType.html#t%3ATcTyVarSet"
>TcTyVarSet</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcl_lie"
>tcl_lie</A
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atcl_tybinds"
>tcl_tybinds</A
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="TcRnTypes.html#t%3ATcTyVarBinds"
>TcTyVarBinds</A
></TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AIfGblEnv"
>IfGblEnv</A
>  = <A HREF="#v%3AIfGblEnv"
>IfGblEnv</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aif_rec_types"
>if_rec_types</A
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> (<A HREF="Module.html#t%3AModule"
>Module</A
>, <A HREF="TcRnTypes.html#t%3AIfG"
>IfG</A
> <A HREF="HscTypes.html#t%3ATypeEnv"
>TypeEnv</A
>)</TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AIfLclEnv"
>IfLclEnv</A
>  = <A HREF="#v%3AIfLclEnv"
>IfLclEnv</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aif_mod"
>if_mod</A
> :: <A HREF="Module.html#t%3AModule"
>Module</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aif_loc"
>if_loc</A
> :: <A HREF="Outputable.html#t%3ASDoc"
>SDoc</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aif_tv_env"
>if_tv_env</A
> :: <A HREF="LazyUniqFM.html#t%3AUniqFM"
>UniqFM</A
> <A HREF="Var.html#t%3ATyVar"
>TyVar</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aif_id_env"
>if_id_env</A
> :: <A HREF="LazyUniqFM.html#t%3AUniqFM"
>UniqFM</A
> <A HREF="Var.html#t%3AId"
>Id</A
></TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3AErrCtxt"
>ErrCtxt</A
> = (<A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
>, <A HREF="VarEnv.html#t%3ATidyEnv"
>TidyEnv</A
> -&gt; <A HREF="TcRnTypes.html#t%3ATcM"
>TcM</A
> (<A HREF="VarEnv.html#t%3ATidyEnv"
>TidyEnv</A
>, <A HREF="ErrUtils.html#t%3AMessage"
>Message</A
>))</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3ARecFieldEnv"
>RecFieldEnv</A
>  = <A HREF="#v%3ARecFields"
>RecFields</A
> (<A HREF="NameEnv.html#t%3ANameEnv"
>NameEnv</A
> [<A HREF="Name.html#t%3AName"
>Name</A
>]) <A HREF="NameSet.html#t%3ANameSet"
>NameSet</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AImportAvails"
>ImportAvails</A
>  = <A HREF="#v%3AImportAvails"
>ImportAvails</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aimp_mods"
>imp_mods</A
> :: <A HREF="Module.html#t%3AModuleEnv"
>ModuleEnv</A
> [(<A HREF="Module.html#t%3AModuleName"
>ModuleName</A
>, <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
>, <A HREF="SrcLoc.html#t%3ASrcSpan"
>SrcSpan</A
>)]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aimp_dep_mods"
>imp_dep_mods</A
> :: <A HREF="Module.html#t%3AModuleNameEnv"
>ModuleNameEnv</A
> (<A HREF="Module.html#t%3AModuleName"
>ModuleName</A
>, <A HREF="HscTypes.html#t%3AIsBootInterface"
>IsBootInterface</A
>)</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aimp_dep_pkgs"
>imp_dep_pkgs</A
> :: [<A HREF="Module.html#t%3APackageId"
>PackageId</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aimp_orphs"
>imp_orphs</A
> :: [<A HREF="Module.html#t%3AModule"
>Module</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Aimp_finsts"
>imp_finsts</A
> :: [<A HREF="Module.html#t%3AModule"
>Module</A
>]</TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AemptyImportAvails"
>emptyImportAvails</A
> :: <A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AplusImportAvails"
>plusImportAvails</A
> :: <A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
> -&gt; <A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
> -&gt; <A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AWhereFrom"
>WhereFrom</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3AImportByUser"
>ImportByUser</A
> <A HREF="HscTypes.html#t%3AIsBootInterface"
>IsBootInterface</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AImportBySystem"
>ImportBySystem</A
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AmkModDeps"
>mkModDeps</A
> :: [(<A HREF="Module.html#t%3AModuleName"
>ModuleName</A
>, <A HREF="HscTypes.html#t%3AIsBootInterface"
>IsBootInterface</A
>)] -&gt; <A HREF="Module.html#t%3AModuleNameEnv"
>ModuleNameEnv</A
> (<A HREF="Module.html#t%3AModuleName"
>ModuleName</A
>, <A HREF="HscTypes.html#t%3AIsBootInterface"
>IsBootInterface</A
>)</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3ATcTyThing"
>TcTyThing</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3AAGlobal"
>AGlobal</A
> <A HREF="Type.html#t%3ATyThing"
>TyThing</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AATcId"
>ATcId</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atct_id"
>tct_id</A
> :: <A HREF="TcRnTypes.html#t%3ATcId"
>TcId</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atct_co"
>tct_co</A
> :: <A HREF="TcRnTypes.html#t%3ARefinementVisibility"
>RefinementVisibility</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atct_type"
>tct_type</A
> :: <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atct_level"
>tct_level</A
> :: <A HREF="TcRnTypes.html#t%3AThLevel"
>ThLevel</A
></TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AATyVar"
>ATyVar</A
> <A HREF="Name.html#t%3AName"
>Name</A
> <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AAThing"
>AThing</A
> <A HREF="TcType.html#t%3ATcKind"
>TcKind</A
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3ApprTcTyThingCategory"
>pprTcTyThingCategory</A
> :: <A HREF="TcRnTypes.html#t%3ATcTyThing"
>TcTyThing</A
> -&gt; <A HREF="Outputable.html#t%3ASDoc"
>SDoc</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3ARefinementVisibility"
>RefinementVisibility</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3AUnrefineable"
>Unrefineable</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ARigid"
>Rigid</A
> <A HREF="HsBinds.html#t%3AHsWrapper"
>HsWrapper</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AWobbly"
>Wobbly</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AWobblyInvisible"
>WobblyInvisible</A
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AThStage"
>ThStage</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3ASplice"
>Splice</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AComp"
>Comp</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ABrack"
>Brack</A
> <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
> (<A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> [<A HREF="HsExpr.html#t%3APendingSplice"
>PendingSplice</A
>]) (<A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
>)</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AtopStage"
>topStage</A
> :: <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AtopAnnStage"
>topAnnStage</A
> :: <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AtopSpliceStage"
>topSpliceStage</A
> :: <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3AThLevel"
>ThLevel</A
> = <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt"
>Int</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AimpLevel"
>impLevel</A
> :: <A HREF="TcRnTypes.html#t%3AThLevel"
>ThLevel</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AouterLevel"
>outerLevel</A
> :: <A HREF="TcRnTypes.html#t%3AThLevel"
>ThLevel</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AthLevel"
>thLevel</A
> :: <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
> -&gt; <A HREF="TcRnTypes.html#t%3AThLevel"
>ThLevel</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AArrowCtxt"
>ArrowCtxt</A
>  = <A HREF="#v%3ANoArrowCtxt"
>NoArrowCtxt</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AnewArrowScope"
>newArrowScope</A
> ::  <A HREF="TcRnTypes.html#t%3ATcM"
>TcM</A
> a -&gt; <A HREF="TcRnTypes.html#t%3ATcM"
>TcM</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AescapeArrowScope"
>escapeArrowScope</A
> ::  <A HREF="TcRnTypes.html#t%3ATcM"
>TcM</A
> a -&gt; <A HREF="TcRnTypes.html#t%3ATcM"
>TcM</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AInst"
>Inst</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3ADict"
>Dict</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_name"
>tci_name</A
> :: <A HREF="Name.html#t%3AName"
>Name</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_pred"
>tci_pred</A
> :: <A HREF="TcType.html#t%3ATcPredType"
>TcPredType</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_loc"
>tci_loc</A
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AImplicInst"
>ImplicInst</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_name"
>tci_name</A
> :: <A HREF="Name.html#t%3AName"
>Name</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_tyvars"
>tci_tyvars</A
> :: [<A HREF="TcType.html#t%3ATcTyVar"
>TcTyVar</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_given"
>tci_given</A
> :: [<A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_wanted"
>tci_wanted</A
> :: [<A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_loc"
>tci_loc</A
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AMethod"
>Method</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_id"
>tci_id</A
> :: <A HREF="TcRnTypes.html#t%3ATcId"
>TcId</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_oid"
>tci_oid</A
> :: <A HREF="TcRnTypes.html#t%3ATcId"
>TcId</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_tys"
>tci_tys</A
> :: [<A HREF="TcType.html#t%3ATcType"
>TcType</A
>]</TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_theta"
>tci_theta</A
> :: <A HREF="TcType.html#t%3ATcThetaType"
>TcThetaType</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_loc"
>tci_loc</A
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ALitInst"
>LitInst</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_name"
>tci_name</A
> :: <A HREF="Name.html#t%3AName"
>Name</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_lit"
>tci_lit</A
> :: <A HREF="HsLit.html#t%3AHsOverLit"
>HsOverLit</A
> <A HREF="Name.html#t%3AName"
>Name</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_ty"
>tci_ty</A
> :: <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_loc"
>tci_loc</A
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AEqInst"
>EqInst</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_left"
>tci_left</A
> :: <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_right"
>tci_right</A
> :: <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_co"
>tci_co</A
> :: <A HREF="TcRnTypes.html#t%3AEqInstCo"
>EqInstCo</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_loc"
>tci_loc</A
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3Atci_name"
>tci_name</A
> :: <A HREF="Name.html#t%3AName"
>Name</A
></TD
></TR
></TABLE
>}</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3AEqInstCo"
>EqInstCo</A
> = <A HREF="../base-4.2.0.2/Data-Either.html#t%3AEither"
>Either</A
> <A HREF="TcType.html#t%3ATcTyVar"
>TcTyVar</A
> <A HREF="Coercion.html#t%3ACoercion"
>Coercion</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AInstOrigin"
>InstOrigin</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3ASigOrigin"
>SigOrigin</A
> <A HREF="TcType.html#t%3ASkolemInfo"
>SkolemInfo</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AIPBindOrigin"
>IPBindOrigin</A
> (<A HREF="BasicTypes.html#t%3AIPName"
>IPName</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AOccurrenceOf"
>OccurrenceOf</A
> <A HREF="Name.html#t%3AName"
>Name</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ASpecPragOrigin"
>SpecPragOrigin</A
> <A HREF="Name.html#t%3AName"
>Name</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AIPOccOrigin"
>IPOccOrigin</A
> (<A HREF="BasicTypes.html#t%3AIPName"
>IPName</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ALiteralOrigin"
>LiteralOrigin</A
> (<A HREF="HsLit.html#t%3AHsOverLit"
>HsOverLit</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ANegateOrigin"
>NegateOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AArithSeqOrigin"
>ArithSeqOrigin</A
> (<A HREF="HsExpr.html#t%3AArithSeqInfo"
>ArithSeqInfo</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3APArrSeqOrigin"
>PArrSeqOrigin</A
> (<A HREF="HsExpr.html#t%3AArithSeqInfo"
>ArithSeqInfo</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ATupleOrigin"
>TupleOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AInstSigOrigin"
>InstSigOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AExprSigOrigin"
>ExprSigOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ARecordUpdOrigin"
>RecordUpdOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AViewPatOrigin"
>ViewPatOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AInstScOrigin"
>InstScOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ANoScOrigin"
>NoScOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ADerivOrigin"
>DerivOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AStandAloneDerivOrigin"
>StandAloneDerivOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ADefaultOrigin"
>DefaultOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ADoOrigin"
>DoOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AProcOrigin"
>ProcOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AImplicOrigin"
>ImplicOrigin</A
> <A HREF="Outputable.html#t%3ASDoc"
>SDoc</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AEqOrigin"
>EqOrigin</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AAnnOrigin"
>AnnOrigin</A
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AInstLoc"
>InstLoc</A
>  = <A HREF="#v%3AInstLoc"
>InstLoc</A
> <A HREF="TcRnTypes.html#t%3AInstOrigin"
>InstOrigin</A
> <A HREF="SrcLoc.html#t%3ASrcSpan"
>SrcSpan</A
> [<A HREF="TcRnTypes.html#t%3AErrCtxt"
>ErrCtxt</A
>]</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3ApprInstLoc"
>pprInstLoc</A
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
> -&gt; <A HREF="Outputable.html#t%3ASDoc"
>SDoc</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3ApprInstArising"
>pprInstArising</A
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="Outputable.html#t%3ASDoc"
>SDoc</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AinstLocSpan"
>instLocSpan</A
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
> -&gt; <A HREF="SrcLoc.html#t%3ASrcSpan"
>SrcSpan</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AinstLocOrigin"
>instLocOrigin</A
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
> -&gt; <A HREF="TcRnTypes.html#t%3AInstOrigin"
>InstOrigin</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AsetInstLoc"
>setInstLoc</A
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
> -&gt; <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ALIE"
>LIE</A
> = <A HREF="Bag.html#t%3ABag"
>Bag</A
> <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AemptyLIE"
>emptyLIE</A
> :: <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AunitLIE"
>unitLIE</A
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AplusLIE"
>plusLIE</A
> :: <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
> -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
> -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AconsLIE"
>consLIE</A
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
> -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AinstLoc"
>instLoc</A
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AinstSpan"
>instSpan</A
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="SrcLoc.html#t%3ASrcSpan"
>SrcSpan</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AplusLIEs"
>plusLIEs</A
> :: [<A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
>] -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AmkLIE"
>mkLIE</A
> :: [<A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
>] -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AisEmptyLIE"
>isEmptyLIE</A
> :: <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
> -&gt; <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%3AlieToList"
>lieToList</A
> :: <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
> -&gt; [<A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
>]</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AlistToLIE"
>listToLIE</A
> :: [<A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
>] -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ATcId"
>TcId</A
> = <A HREF="Var.html#t%3AId"
>Id</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ATcIdSet"
>TcIdSet</A
> = <A HREF="VarSet.html#t%3AIdSet"
>IdSet</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ATcDictBinds"
>TcDictBinds</A
> = <A HREF="HsBinds.html#t%3ADictBinds"
>DictBinds</A
> <A HREF="TcRnTypes.html#t%3ATcId"
>TcId</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3ATcTyVarBind"
>TcTyVarBind</A
>  = <A HREF="#v%3ATcTyVarBind"
>TcTyVarBind</A
> <A HREF="TcType.html#t%3ATcTyVar"
>TcTyVar</A
> <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ATcTyVarBinds"
>TcTyVarBinds</A
> = <A HREF="Bag.html#t%3ABag"
>Bag</A
> <A HREF="TcRnTypes.html#t%3ATcTyVarBind"
>TcTyVarBind</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="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:TcRnIf"
><A NAME="t%3ATcRnIf"
></A
></A
><B
>TcRnIf</B
> a b c = <A HREF="IOEnv.html#t%3AIOEnv"
>IOEnv</A
> (<A HREF="TcRnTypes.html#t%3AEnv"
>Env</A
> a b) c</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:TcRn"
><A NAME="t%3ATcRn"
></A
></A
><B
>TcRn</B
> a = <A HREF="TcRnTypes.html#t%3ATcRnIf"
>TcRnIf</A
> <A HREF="TcRnTypes.html#t%3ATcGblEnv"
>TcGblEnv</A
> <A HREF="TcRnTypes.html#t%3ATcLclEnv"
>TcLclEnv</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:TcM"
><A NAME="t%3ATcM"
></A
></A
><B
>TcM</B
> a = <A HREF="TcRnTypes.html#t%3ATcRn"
>TcRn</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:RnM"
><A NAME="t%3ARnM"
></A
></A
><B
>RnM</B
> a = <A HREF="TcRnTypes.html#t%3ATcRn"
>TcRn</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:IfM"
><A NAME="t%3AIfM"
></A
></A
><B
>IfM</B
> lcl a = <A HREF="TcRnTypes.html#t%3ATcRnIf"
>TcRnIf</A
> <A HREF="TcRnTypes.html#t%3AIfGblEnv"
>IfGblEnv</A
> lcl a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:IfL"
><A NAME="t%3AIfL"
></A
></A
><B
>IfL</B
> a = <A HREF="TcRnTypes.html#t%3AIfM"
>IfM</A
> <A HREF="TcRnTypes.html#t%3AIfLclEnv"
>IfLclEnv</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:IfG"
><A NAME="t%3AIfG"
></A
></A
><B
>IfG</B
> a = <A HREF="TcRnTypes.html#t%3AIfM"
>IfM</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:TcRef"
><A NAME="t%3ATcRef"
></A
></A
><B
>TcRef</B
> a = <A HREF="IOEnv.html#t%3AIORef"
>IORef</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:Env"
><A NAME="t%3AEnv"
></A
></A
><B
>Env</B
> gbl lcl </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><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:Env"
><A NAME="v%3AEnv"
></A
></A
><B
>Env</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:env_top"
><A NAME="v%3Aenv_top"
></A
></A
><B
>env_top</B
> :: <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:env_us"
><A NAME="v%3Aenv_us"
></A
></A
><B
>env_us</B
> :: !(<A HREF="IOEnv.html#t%3AIORef"
>IORef</A
> <A HREF="UniqSupply.html#t%3AUniqSupply"
>UniqSupply</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:env_gbl"
><A NAME="v%3Aenv_gbl"
></A
></A
><B
>env_gbl</B
> :: gbl</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:env_lcl"
><A NAME="v%3Aenv_lcl"
></A
></A
><B
>env_lcl</B
> :: lcl</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:Env')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:Env" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="../template-haskell-2.4.0.1/Language-Haskell-TH-Syntax.html#t%3AQuasi"
>Quasi</A
> (<A HREF="IOEnv.html#t%3AIOEnv"
>IOEnv</A
> (<A HREF="TcRnTypes.html#t%3AEnv"
>Env</A
> <A HREF="TcRnTypes.html#t%3ATcGblEnv"
>TcGblEnv</A
> <A HREF="TcRnTypes.html#t%3ATcLclEnv"
>TcLclEnv</A
>))</TD
></TR
><TR
><TD CLASS="decl"
><A HREF="UniqSupply.html#t%3AMonadUnique"
>MonadUnique</A
> (<A HREF="IOEnv.html#t%3AIOEnv"
>IOEnv</A
> (<A HREF="TcRnTypes.html#t%3AEnv"
>Env</A
> gbl lcl))</TD
></TR
><TR
><TD CLASS="decl"
><A HREF="HscTypes.html#t%3AMonadThings"
>MonadThings</A
> (<A HREF="IOEnv.html#t%3AIOEnv"
>IOEnv</A
> (<A HREF="TcRnTypes.html#t%3AEnv"
>Env</A
> <A HREF="TcRnTypes.html#t%3ATcGblEnv"
>TcGblEnv</A
> <A HREF="TcRnTypes.html#t%3ATcLclEnv"
>TcLclEnv</A
>))</TD
></TR
><TR
><TD CLASS="decl"
><A HREF="HscTypes.html#t%3AMonadThings"
>MonadThings</A
> (<A HREF="IOEnv.html#t%3AIOEnv"
>IOEnv</A
> (<A HREF="TcRnTypes.html#t%3AEnv"
>Env</A
> DsGblEnv DsLclEnv))</TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:TcGblEnv"
><A NAME="t%3ATcGblEnv"
></A
></A
><B
>TcGblEnv</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><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:TcGblEnv"
><A NAME="v%3ATcGblEnv"
></A
></A
><B
>TcGblEnv</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:tcg_mod"
><A NAME="v%3Atcg_mod"
></A
></A
><B
>tcg_mod</B
> :: <A HREF="Module.html#t%3AModule"
>Module</A
></TD
><TD CLASS="rdoc"
>Module being compiled
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_src"
><A NAME="v%3Atcg_src"
></A
></A
><B
>tcg_src</B
> :: <A HREF="DriverPhases.html#t%3AHscSource"
>HscSource</A
></TD
><TD CLASS="rdoc"
>What kind of module (regular Haskell, hs-boot, ext-core)
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_rdr_env"
><A NAME="v%3Atcg_rdr_env"
></A
></A
><B
>tcg_rdr_env</B
> :: <A HREF="RdrName.html#t%3AGlobalRdrEnv"
>GlobalRdrEnv</A
></TD
><TD CLASS="rdoc"
>Top level envt; used during renaming
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_default"
><A NAME="v%3Atcg_default"
></A
></A
><B
>tcg_default</B
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> [<A HREF="Type.html#t%3AType"
>Type</A
>]</TD
><TD CLASS="rdoc"
>Types used for defaulting. <TT
>Nothing</TT
> =&gt; no <TT
>default</TT
> decl
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_fix_env"
><A NAME="v%3Atcg_fix_env"
></A
></A
><B
>tcg_fix_env</B
> :: <A HREF="HscTypes.html#t%3AFixityEnv"
>FixityEnv</A
></TD
><TD CLASS="rdoc"
>Just for things in this module
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_field_env"
><A NAME="v%3Atcg_field_env"
></A
></A
><B
>tcg_field_env</B
> :: <A HREF="TcRnTypes.html#t%3ARecFieldEnv"
>RecFieldEnv</A
></TD
><TD CLASS="rdoc"
>Just for things in this module
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_type_env"
><A NAME="v%3Atcg_type_env"
></A
></A
><B
>tcg_type_env</B
> :: <A HREF="HscTypes.html#t%3ATypeEnv"
>TypeEnv</A
></TD
><TD CLASS="rdoc"
><P
>Global type env for the module we are compiling now.  All
 TyCons and Classes (for this module) end up in here right away,
 along with their derived constructors, selectors.
</P
><P
>(Ids defined in this module start in the local envt, though they
  move to the global envt during zonking)
</P
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_type_env_var"
><A NAME="v%3Atcg_type_env_var"
></A
></A
><B
>tcg_type_env_var</B
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="HscTypes.html#t%3ATypeEnv"
>TypeEnv</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_inst_env"
><A NAME="v%3Atcg_inst_env"
></A
></A
><B
>tcg_inst_env</B
> :: <A HREF="InstEnv.html#t%3AInstEnv"
>InstEnv</A
></TD
><TD CLASS="rdoc"
>Instance envt for <EM
>home-package</EM
> modules; Includes the dfuns in
 tcg_insts
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_fam_inst_env"
><A NAME="v%3Atcg_fam_inst_env"
></A
></A
><B
>tcg_fam_inst_env</B
> :: <A HREF="FamInstEnv.html#t%3AFamInstEnv"
>FamInstEnv</A
></TD
><TD CLASS="rdoc"
>Ditto for family instances
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_exports"
><A NAME="v%3Atcg_exports"
></A
></A
><B
>tcg_exports</B
> :: [<A HREF="HscTypes.html#t%3AAvailInfo"
>AvailInfo</A
>]</TD
><TD CLASS="rdoc"
>What is exported
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_imports"
><A NAME="v%3Atcg_imports"
></A
></A
><B
>tcg_imports</B
> :: <A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
></TD
><TD CLASS="rdoc"
>Information about what was imported from where, including
 things bound in this module.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_dus"
><A NAME="v%3Atcg_dus"
></A
></A
><B
>tcg_dus</B
> :: <A HREF="NameSet.html#t%3ADefUses"
>DefUses</A
></TD
><TD CLASS="rdoc"
><P
>What is defined in this module and what is used.
 The latter is used to generate
</P
><P
>(a) version tracking; no need to recompile if these things have
      not changed version stamp
</P
><P
>(b) unused-import info
</P
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_keep"
><A NAME="v%3Atcg_keep"
></A
></A
><B
>tcg_keep</B
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="NameSet.html#t%3ANameSet"
>NameSet</A
></TD
><TD CLASS="rdoc"
><P
>Locally-defined top-level names to keep alive.
</P
><P
><A HREF="Keep alive.html"
>Keep alive</A
> means give them an Exported flag, so that the
 simplifier does not discard them as dead code, and so that they
 are exposed in the interface file (but not to export to the
 user).
</P
><P
>Some things, like dict-fun Ids and default-method Ids are <A HREF="born.html"
>born</A
>
 with the Exported flag on, for exactly the above reason, but some
 we only discover as we go.  Specifically:
</P
><UL
><LI
> The to/from functions for generic data types
</LI
><LI
> Top-level variables appearing free in the RHS of an orphan
     rule
</LI
><LI
> Top-level variables appearing free in a TH bracket
</LI
></UL
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_inst_uses"
><A NAME="v%3Atcg_inst_uses"
></A
></A
><B
>tcg_inst_uses</B
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="NameSet.html#t%3ANameSet"
>NameSet</A
></TD
><TD CLASS="rdoc"
><P
>Home-package Dfuns actually used.
</P
><P
>Used to generate version dependencies This records usages, rather
 like tcg_dus, but it has to be a mutable variable so it can be
 augmented when we look up an instance.  These uses of dfuns are
 rather like the free variables of the program, but are implicit
 instead of explicit.
</P
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_th_used"
><A NAME="v%3Atcg_th_used"
></A
></A
><B
>tcg_th_used</B
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
></TD
><TD CLASS="rdoc"
><P
><TT
>True</TT
> <A HREF="="
>=</A
> Template Haskell syntax used.
</P
><P
>We need this so that we can generate a dependency on the Template
 Haskell package, becuase the desugarer is going to emit loads of
 references to TH symbols.  It's rather like tcg_inst_uses; the
 reference is implicit rather than explicit, so we have to zap a
 mutable variable.
</P
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_dfun_n"
><A NAME="v%3Atcg_dfun_n"
></A
></A
><B
>tcg_dfun_n</B
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="OccName.html#t%3AOccSet"
>OccSet</A
></TD
><TD CLASS="rdoc"
>Allows us to choose unique DFun names.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_rn_exports"
><A NAME="v%3Atcg_rn_exports"
></A
></A
><B
>tcg_rn_exports</B
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> [<A HREF="SrcLoc.html#t%3ALocated"
>Located</A
> (<A HREF="HsImpExp.html#t%3AIE"
>IE</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_rn_imports"
><A NAME="v%3Atcg_rn_imports"
></A
></A
><B
>tcg_rn_imports</B
> :: [<A HREF="HsImpExp.html#t%3ALImportDecl"
>LImportDecl</A
> <A HREF="Name.html#t%3AName"
>Name</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_used_rdrnames"
><A NAME="v%3Atcg_used_rdrnames"
></A
></A
><B
>tcg_used_rdrnames</B
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> (<A HREF="../containers-0.3.0.0/Data-Set.html#t%3ASet"
>Set</A
> <A HREF="RdrName.html#t%3ARdrName"
>RdrName</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_rn_decls"
><A NAME="v%3Atcg_rn_decls"
></A
></A
><B
>tcg_rn_decls</B
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> (<A HREF="HsDecls.html#t%3AHsGroup"
>HsGroup</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
><TD CLASS="rdoc"
>Renamed decls, maybe.  <TT
>Nothing</TT
> <A HREF="="
>=</A
> Don't retain renamed
 decls.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_binds"
><A NAME="v%3Atcg_binds"
></A
></A
><B
>tcg_binds</B
> :: <A HREF="HsBinds.html#t%3ALHsBinds"
>LHsBinds</A
> <A HREF="Var.html#t%3AId"
>Id</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_warns"
><A NAME="v%3Atcg_warns"
></A
></A
><B
>tcg_warns</B
> :: <A HREF="HscTypes.html#t%3AWarnings"
>Warnings</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_anns"
><A NAME="v%3Atcg_anns"
></A
></A
><B
>tcg_anns</B
> :: [<A HREF="Annotations.html#t%3AAnnotation"
>Annotation</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_insts"
><A NAME="v%3Atcg_insts"
></A
></A
><B
>tcg_insts</B
> :: [<A HREF="InstEnv.html#t%3AInstance"
>Instance</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_fam_insts"
><A NAME="v%3Atcg_fam_insts"
></A
></A
><B
>tcg_fam_insts</B
> :: [<A HREF="FamInstEnv.html#t%3AFamInst"
>FamInst</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_rules"
><A NAME="v%3Atcg_rules"
></A
></A
><B
>tcg_rules</B
> :: [<A HREF="HsDecls.html#t%3ALRuleDecl"
>LRuleDecl</A
> <A HREF="Var.html#t%3AId"
>Id</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_fords"
><A NAME="v%3Atcg_fords"
></A
></A
><B
>tcg_fords</B
> :: [<A HREF="HsDecls.html#t%3ALForeignDecl"
>LForeignDecl</A
> <A HREF="Var.html#t%3AId"
>Id</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_doc_hdr"
><A NAME="v%3Atcg_doc_hdr"
></A
></A
><B
>tcg_doc_hdr</B
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="HsDoc.html#t%3ALHsDocString"
>LHsDocString</A
></TD
><TD CLASS="rdoc"
>Maybe Haddock header docs
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_hpc"
><A NAME="v%3Atcg_hpc"
></A
></A
><B
>tcg_hpc</B
> :: <A HREF="HscTypes.html#t%3AAnyHpcUsage"
>AnyHpcUsage</A
></TD
><TD CLASS="rdoc"
><TT
>True</TT
> if any part of the
  prog uses hpc instrumentation.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcg_main"
><A NAME="v%3Atcg_main"
></A
></A
><B
>tcg_main</B
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Name.html#t%3AName"
>Name</A
></TD
><TD CLASS="rdoc"
>The Name of the main
 function, if this module is
 the main module.
</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:TcGblEnv')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:TcGblEnv" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="../template-haskell-2.4.0.1/Language-Haskell-TH-Syntax.html#t%3AQuasi"
>Quasi</A
> (<A HREF="IOEnv.html#t%3AIOEnv"
>IOEnv</A
> (<A HREF="TcRnTypes.html#t%3AEnv"
>Env</A
> <A HREF="TcRnTypes.html#t%3ATcGblEnv"
>TcGblEnv</A
> <A HREF="TcRnTypes.html#t%3ATcLclEnv"
>TcLclEnv</A
>))</TD
></TR
><TR
><TD CLASS="decl"
><A HREF="HscTypes.html#t%3AMonadThings"
>MonadThings</A
> (<A HREF="IOEnv.html#t%3AIOEnv"
>IOEnv</A
> (<A HREF="TcRnTypes.html#t%3AEnv"
>Env</A
> <A HREF="TcRnTypes.html#t%3ATcGblEnv"
>TcGblEnv</A
> <A HREF="TcRnTypes.html#t%3ATcLclEnv"
>TcLclEnv</A
>))</TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:TcLclEnv"
><A NAME="t%3ATcLclEnv"
></A
></A
><B
>TcLclEnv</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><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:TcLclEnv"
><A NAME="v%3ATcLclEnv"
></A
></A
><B
>TcLclEnv</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:tcl_loc"
><A NAME="v%3Atcl_loc"
></A
></A
><B
>tcl_loc</B
> :: <A HREF="SrcLoc.html#t%3ASrcSpan"
>SrcSpan</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcl_ctxt"
><A NAME="v%3Atcl_ctxt"
></A
></A
><B
>tcl_ctxt</B
> :: [<A HREF="TcRnTypes.html#t%3AErrCtxt"
>ErrCtxt</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcl_errs"
><A NAME="v%3Atcl_errs"
></A
></A
><B
>tcl_errs</B
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="ErrUtils.html#t%3AMessages"
>Messages</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcl_th_ctxt"
><A NAME="v%3Atcl_th_ctxt"
></A
></A
><B
>tcl_th_ctxt</B
> :: <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcl_arrow_ctxt"
><A NAME="v%3Atcl_arrow_ctxt"
></A
></A
><B
>tcl_arrow_ctxt</B
> :: <A HREF="TcRnTypes.html#t%3AArrowCtxt"
>ArrowCtxt</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcl_rdr"
><A NAME="v%3Atcl_rdr"
></A
></A
><B
>tcl_rdr</B
> :: <A HREF="RdrName.html#t%3ALocalRdrEnv"
>LocalRdrEnv</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcl_env"
><A NAME="v%3Atcl_env"
></A
></A
><B
>tcl_env</B
> :: <A HREF="NameEnv.html#t%3ANameEnv"
>NameEnv</A
> <A HREF="TcRnTypes.html#t%3ATcTyThing"
>TcTyThing</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcl_tyvars"
><A NAME="v%3Atcl_tyvars"
></A
></A
><B
>tcl_tyvars</B
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="TcType.html#t%3ATcTyVarSet"
>TcTyVarSet</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcl_lie"
><A NAME="v%3Atcl_lie"
></A
></A
><B
>tcl_lie</B
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tcl_tybinds"
><A NAME="v%3Atcl_tybinds"
></A
></A
><B
>tcl_tybinds</B
> :: <A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="TcRnTypes.html#t%3ATcTyVarBinds"
>TcTyVarBinds</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:TcLclEnv')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:TcLclEnv" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="../template-haskell-2.4.0.1/Language-Haskell-TH-Syntax.html#t%3AQuasi"
>Quasi</A
> (<A HREF="IOEnv.html#t%3AIOEnv"
>IOEnv</A
> (<A HREF="TcRnTypes.html#t%3AEnv"
>Env</A
> <A HREF="TcRnTypes.html#t%3ATcGblEnv"
>TcGblEnv</A
> <A HREF="TcRnTypes.html#t%3ATcLclEnv"
>TcLclEnv</A
>))</TD
></TR
><TR
><TD CLASS="decl"
><A HREF="HscTypes.html#t%3AMonadThings"
>MonadThings</A
> (<A HREF="IOEnv.html#t%3AIOEnv"
>IOEnv</A
> (<A HREF="TcRnTypes.html#t%3AEnv"
>Env</A
> <A HREF="TcRnTypes.html#t%3ATcGblEnv"
>TcGblEnv</A
> <A HREF="TcRnTypes.html#t%3ATcLclEnv"
>TcLclEnv</A
>))</TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:IfGblEnv"
><A NAME="t%3AIfGblEnv"
></A
></A
><B
>IfGblEnv</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><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:IfGblEnv"
><A NAME="v%3AIfGblEnv"
></A
></A
><B
>IfGblEnv</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:if_rec_types"
><A NAME="v%3Aif_rec_types"
></A
></A
><B
>if_rec_types</B
> :: <A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> (<A HREF="Module.html#t%3AModule"
>Module</A
>, <A HREF="TcRnTypes.html#t%3AIfG"
>IfG</A
> <A HREF="HscTypes.html#t%3ATypeEnv"
>TypeEnv</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:IfLclEnv"
><A NAME="t%3AIfLclEnv"
></A
></A
><B
>IfLclEnv</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><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:IfLclEnv"
><A NAME="v%3AIfLclEnv"
></A
></A
><B
>IfLclEnv</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:if_mod"
><A NAME="v%3Aif_mod"
></A
></A
><B
>if_mod</B
> :: <A HREF="Module.html#t%3AModule"
>Module</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:if_loc"
><A NAME="v%3Aif_loc"
></A
></A
><B
>if_loc</B
> :: <A HREF="Outputable.html#t%3ASDoc"
>SDoc</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:if_tv_env"
><A NAME="v%3Aif_tv_env"
></A
></A
><B
>if_tv_env</B
> :: <A HREF="LazyUniqFM.html#t%3AUniqFM"
>UniqFM</A
> <A HREF="Var.html#t%3ATyVar"
>TyVar</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:if_id_env"
><A NAME="v%3Aif_id_env"
></A
></A
><B
>if_id_env</B
> :: <A HREF="LazyUniqFM.html#t%3AUniqFM"
>UniqFM</A
> <A HREF="Var.html#t%3AId"
>Id</A
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:ErrCtxt"
><A NAME="t%3AErrCtxt"
></A
></A
><B
>ErrCtxt</B
> = (<A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
>, <A HREF="VarEnv.html#t%3ATidyEnv"
>TidyEnv</A
> -&gt; <A HREF="TcRnTypes.html#t%3ATcM"
>TcM</A
> (<A HREF="VarEnv.html#t%3ATidyEnv"
>TidyEnv</A
>, <A HREF="ErrUtils.html#t%3AMessage"
>Message</A
>))</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:RecFieldEnv"
><A NAME="t%3ARecFieldEnv"
></A
></A
><B
>RecFieldEnv</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:RecFields"
><A NAME="v%3ARecFields"
></A
></A
><B
>RecFields</B
> (<A HREF="NameEnv.html#t%3ANameEnv"
>NameEnv</A
> [<A HREF="Name.html#t%3AName"
>Name</A
>]) <A HREF="NameSet.html#t%3ANameSet"
>NameSet</A
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:ImportAvails"
><A NAME="t%3AImportAvails"
></A
></A
><B
>ImportAvails</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
><P
><TT
><A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
></TT
> summarises what was imported from where, irrespective of
 whether the imported things are actually used or not.  It is used:
</P
><UL
><LI
> when processing the export list,
</LI
><LI
> when constructing usage info for the interface file,
</LI
><LI
> to identify the list of directly imported modules for initialisation
    purposes and for optimised overlap checking of family instances,
</LI
><LI
> when figuring out what things are really unused
</LI
></UL
></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:ImportAvails"
><A NAME="v%3AImportAvails"
></A
></A
><B
>ImportAvails</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:imp_mods"
><A NAME="v%3Aimp_mods"
></A
></A
><B
>imp_mods</B
> :: <A HREF="Module.html#t%3AModuleEnv"
>ModuleEnv</A
> [(<A HREF="Module.html#t%3AModuleName"
>ModuleName</A
>, <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
>, <A HREF="SrcLoc.html#t%3ASrcSpan"
>SrcSpan</A
>)]</TD
><TD CLASS="rdoc"
><P
>Domain is all directly-imported modules
 The <TT
><A HREF="Module.html#t%3AModuleName"
>ModuleName</A
></TT
> is what the module was imported as, e.g. in
 <TT
>
     import Foo as Bar
 </TT
>
 it is <TT
>Bar</TT
>.
</P
><P
>The <TT
><A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
></TT
> means:
</P
><UL
><LI
> <TT
>True</TT
> =&gt; import was <TT
>import Foo ()</TT
>
</LI
><LI
> <TT
>False</TT
> =&gt; import was some other form
</LI
></UL
><P
>Used
</P
><P
>(a) to help construct the usage information in the interface
       file; if we import somethign we need to recompile if the
       export version changes
</P
><P
>(b) to specify what child modules to initialise
</P
><P
>We need a full ModuleEnv rather than a ModuleNameEnv here,
 because we might be importing modules of the same name from
 different packages. (currently not the case, but might be in the
 future).
</P
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:imp_dep_mods"
><A NAME="v%3Aimp_dep_mods"
></A
></A
><B
>imp_dep_mods</B
> :: <A HREF="Module.html#t%3AModuleNameEnv"
>ModuleNameEnv</A
> (<A HREF="Module.html#t%3AModuleName"
>ModuleName</A
>, <A HREF="HscTypes.html#t%3AIsBootInterface"
>IsBootInterface</A
>)</TD
><TD CLASS="rdoc"
><P
>Home-package modules needed by the module being compiled
</P
><P
>It doesn't matter whether any of these dependencies
 are actually <EM
>used</EM
> when compiling the module; they
 are listed if they are below it at all.  For
 example, suppose M imports A which imports X.  Then
 compiling M might not need to consult X.hi, but X
 is still listed in M's dependencies.
</P
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:imp_dep_pkgs"
><A NAME="v%3Aimp_dep_pkgs"
></A
></A
><B
>imp_dep_pkgs</B
> :: [<A HREF="Module.html#t%3APackageId"
>PackageId</A
>]</TD
><TD CLASS="rdoc"
>Packages needed by the module being compiled, whether directly,
 or via other modules in this package, or via modules imported
 from other packages.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:imp_orphs"
><A NAME="v%3Aimp_orphs"
></A
></A
><B
>imp_orphs</B
> :: [<A HREF="Module.html#t%3AModule"
>Module</A
>]</TD
><TD CLASS="rdoc"
>Orphan modules below us in the import tree (and maybe including
 us for imported modules)
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:imp_finsts"
><A NAME="v%3Aimp_finsts"
></A
></A
><B
>imp_finsts</B
> :: [<A HREF="Module.html#t%3AModule"
>Module</A
>]</TD
><TD CLASS="rdoc"
>Family instance modules below us in the import tree (and maybe
 including us for imported modules)
</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:emptyImportAvails"
><A NAME="v%3AemptyImportAvails"
></A
></A
><B
>emptyImportAvails</B
> :: <A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:plusImportAvails"
><A NAME="v%3AplusImportAvails"
></A
></A
><B
>plusImportAvails</B
> :: <A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
> -&gt; <A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
> -&gt; <A HREF="TcRnTypes.html#t%3AImportAvails"
>ImportAvails</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:WhereFrom"
><A NAME="t%3AWhereFrom"
></A
></A
><B
>WhereFrom</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:ImportByUser"
><A NAME="v%3AImportByUser"
></A
></A
><B
>ImportByUser</B
> <A HREF="HscTypes.html#t%3AIsBootInterface"
>IsBootInterface</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:ImportBySystem"
><A NAME="v%3AImportBySystem"
></A
></A
><B
>ImportBySystem</B
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:WhereFrom')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:WhereFrom" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Outputable.html#t%3AOutputable"
>Outputable</A
> <A HREF="TcRnTypes.html#t%3AWhereFrom"
>WhereFrom</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:mkModDeps"
><A NAME="v%3AmkModDeps"
></A
></A
><B
>mkModDeps</B
> :: [(<A HREF="Module.html#t%3AModuleName"
>ModuleName</A
>, <A HREF="HscTypes.html#t%3AIsBootInterface"
>IsBootInterface</A
>)] -&gt; <A HREF="Module.html#t%3AModuleNameEnv"
>ModuleNameEnv</A
> (<A HREF="Module.html#t%3AModuleName"
>ModuleName</A
>, <A HREF="HscTypes.html#t%3AIsBootInterface"
>IsBootInterface</A
>)</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:TcTyThing"
><A NAME="t%3ATcTyThing"
></A
></A
><B
>TcTyThing</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><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:AGlobal"
><A NAME="v%3AAGlobal"
></A
></A
><B
>AGlobal</B
> <A HREF="Type.html#t%3ATyThing"
>TyThing</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:ATcId"
><A NAME="v%3AATcId"
></A
></A
><B
>ATcId</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:tct_id"
><A NAME="v%3Atct_id"
></A
></A
><B
>tct_id</B
> :: <A HREF="TcRnTypes.html#t%3ATcId"
>TcId</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tct_co"
><A NAME="v%3Atct_co"
></A
></A
><B
>tct_co</B
> :: <A HREF="TcRnTypes.html#t%3ARefinementVisibility"
>RefinementVisibility</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tct_type"
><A NAME="v%3Atct_type"
></A
></A
><B
>tct_type</B
> :: <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tct_level"
><A NAME="v%3Atct_level"
></A
></A
><B
>tct_level</B
> :: <A HREF="TcRnTypes.html#t%3AThLevel"
>ThLevel</A
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:ATyVar"
><A NAME="v%3AATyVar"
></A
></A
><B
>ATyVar</B
> <A HREF="Name.html#t%3AName"
>Name</A
> <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:AThing"
><A NAME="v%3AAThing"
></A
></A
><B
>AThing</B
> <A HREF="TcType.html#t%3ATcKind"
>TcKind</A
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:TcTyThing')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:TcTyThing" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Outputable.html#t%3AOutputable"
>Outputable</A
> <A HREF="TcRnTypes.html#t%3ATcTyThing"
>TcTyThing</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:pprTcTyThingCategory"
><A NAME="v%3ApprTcTyThingCategory"
></A
></A
><B
>pprTcTyThingCategory</B
> :: <A HREF="TcRnTypes.html#t%3ATcTyThing"
>TcTyThing</A
> -&gt; <A HREF="Outputable.html#t%3ASDoc"
>SDoc</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:RefinementVisibility"
><A NAME="t%3ARefinementVisibility"
></A
></A
><B
>RefinementVisibility</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:Unrefineable"
><A NAME="v%3AUnrefineable"
></A
></A
><B
>Unrefineable</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:Rigid"
><A NAME="v%3ARigid"
></A
></A
><B
>Rigid</B
> <A HREF="HsBinds.html#t%3AHsWrapper"
>HsWrapper</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:Wobbly"
><A NAME="v%3AWobbly"
></A
></A
><B
>Wobbly</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:WobblyInvisible"
><A NAME="v%3AWobblyInvisible"
></A
></A
><B
>WobblyInvisible</B
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:RefinementVisibility')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:RefinementVisibility" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Outputable.html#t%3AOutputable"
>Outputable</A
> <A HREF="TcRnTypes.html#t%3ARefinementVisibility"
>RefinementVisibility</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:ThStage"
><A NAME="t%3AThStage"
></A
></A
><B
>ThStage</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:Splice"
><A NAME="v%3ASplice"
></A
></A
><B
>Splice</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:Comp"
><A NAME="v%3AComp"
></A
></A
><B
>Comp</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:Brack"
><A NAME="v%3ABrack"
></A
></A
><B
>Brack</B
> <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
> (<A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> [<A HREF="HsExpr.html#t%3APendingSplice"
>PendingSplice</A
>]) (<A HREF="TcRnTypes.html#t%3ATcRef"
>TcRef</A
> <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ThStage')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:ThStage" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Outputable.html#t%3AOutputable"
>Outputable</A
> <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:topStage"
><A NAME="v%3AtopStage"
></A
></A
><B
>topStage</B
> :: <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:topAnnStage"
><A NAME="v%3AtopAnnStage"
></A
></A
><B
>topAnnStage</B
> :: <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:topSpliceStage"
><A NAME="v%3AtopSpliceStage"
></A
></A
><B
>topSpliceStage</B
> :: <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:ThLevel"
><A NAME="t%3AThLevel"
></A
></A
><B
>ThLevel</B
> = <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt"
>Int</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:impLevel"
><A NAME="v%3AimpLevel"
></A
></A
><B
>impLevel</B
> :: <A HREF="TcRnTypes.html#t%3AThLevel"
>ThLevel</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:outerLevel"
><A NAME="v%3AouterLevel"
></A
></A
><B
>outerLevel</B
> :: <A HREF="TcRnTypes.html#t%3AThLevel"
>ThLevel</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:thLevel"
><A NAME="v%3AthLevel"
></A
></A
><B
>thLevel</B
> :: <A HREF="TcRnTypes.html#t%3AThStage"
>ThStage</A
> -&gt; <A HREF="TcRnTypes.html#t%3AThLevel"
>ThLevel</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:ArrowCtxt"
><A NAME="t%3AArrowCtxt"
></A
></A
><B
>ArrowCtxt</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:NoArrowCtxt"
><A NAME="v%3ANoArrowCtxt"
></A
></A
><B
>NoArrowCtxt</B
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:newArrowScope"
><A NAME="v%3AnewArrowScope"
></A
></A
><B
>newArrowScope</B
> ::  <A HREF="TcRnTypes.html#t%3ATcM"
>TcM</A
> a -&gt; <A HREF="TcRnTypes.html#t%3ATcM"
>TcM</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:escapeArrowScope"
><A NAME="v%3AescapeArrowScope"
></A
></A
><B
>escapeArrowScope</B
> ::  <A HREF="TcRnTypes.html#t%3ATcM"
>TcM</A
> a -&gt; <A HREF="TcRnTypes.html#t%3ATcM"
>TcM</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:Inst"
><A NAME="t%3AInst"
></A
></A
><B
>Inst</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><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:Dict"
><A NAME="v%3ADict"
></A
></A
><B
>Dict</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:tci_name"
><A NAME="v%3Atci_name"
></A
></A
><B
>tci_name</B
> :: <A HREF="Name.html#t%3AName"
>Name</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_pred"
><A NAME="v%3Atci_pred"
></A
></A
><B
>tci_pred</B
> :: <A HREF="TcType.html#t%3ATcPredType"
>TcPredType</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_loc"
><A NAME="v%3Atci_loc"
></A
></A
><B
>tci_loc</B
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:ImplicInst"
><A NAME="v%3AImplicInst"
></A
></A
><B
>ImplicInst</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:tci_name"
><A NAME="v%3Atci_name"
></A
></A
><B
>tci_name</B
> :: <A HREF="Name.html#t%3AName"
>Name</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_tyvars"
><A NAME="v%3Atci_tyvars"
></A
></A
><B
>tci_tyvars</B
> :: [<A HREF="TcType.html#t%3ATcTyVar"
>TcTyVar</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_given"
><A NAME="v%3Atci_given"
></A
></A
><B
>tci_given</B
> :: [<A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_wanted"
><A NAME="v%3Atci_wanted"
></A
></A
><B
>tci_wanted</B
> :: [<A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_loc"
><A NAME="v%3Atci_loc"
></A
></A
><B
>tci_loc</B
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:Method"
><A NAME="v%3AMethod"
></A
></A
><B
>Method</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:tci_id"
><A NAME="v%3Atci_id"
></A
></A
><B
>tci_id</B
> :: <A HREF="TcRnTypes.html#t%3ATcId"
>TcId</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_oid"
><A NAME="v%3Atci_oid"
></A
></A
><B
>tci_oid</B
> :: <A HREF="TcRnTypes.html#t%3ATcId"
>TcId</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_tys"
><A NAME="v%3Atci_tys"
></A
></A
><B
>tci_tys</B
> :: [<A HREF="TcType.html#t%3ATcType"
>TcType</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_theta"
><A NAME="v%3Atci_theta"
></A
></A
><B
>tci_theta</B
> :: <A HREF="TcType.html#t%3ATcThetaType"
>TcThetaType</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_loc"
><A NAME="v%3Atci_loc"
></A
></A
><B
>tci_loc</B
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:LitInst"
><A NAME="v%3ALitInst"
></A
></A
><B
>LitInst</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:tci_name"
><A NAME="v%3Atci_name"
></A
></A
><B
>tci_name</B
> :: <A HREF="Name.html#t%3AName"
>Name</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_lit"
><A NAME="v%3Atci_lit"
></A
></A
><B
>tci_lit</B
> :: <A HREF="HsLit.html#t%3AHsOverLit"
>HsOverLit</A
> <A HREF="Name.html#t%3AName"
>Name</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_ty"
><A NAME="v%3Atci_ty"
></A
></A
><B
>tci_ty</B
> :: <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_loc"
><A NAME="v%3Atci_loc"
></A
></A
><B
>tci_loc</B
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:EqInst"
><A NAME="v%3AEqInst"
></A
></A
><B
>EqInst</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:tci_left"
><A NAME="v%3Atci_left"
></A
></A
><B
>tci_left</B
> :: <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_right"
><A NAME="v%3Atci_right"
></A
></A
><B
>tci_right</B
> :: <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_co"
><A NAME="v%3Atci_co"
></A
></A
><B
>tci_co</B
> :: <A HREF="TcRnTypes.html#t%3AEqInstCo"
>EqInstCo</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_loc"
><A NAME="v%3Atci_loc"
></A
></A
><B
>tci_loc</B
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:tci_name"
><A NAME="v%3Atci_name"
></A
></A
><B
>tci_name</B
> :: <A HREF="Name.html#t%3AName"
>Name</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:Inst')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:Inst" 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="TcRnTypes.html#t%3AInst"
>Inst</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="../base-4.2.0.2/Data-Ord.html#t%3AOrd"
>Ord</A
> <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Outputable.html#t%3AOutputable"
>Outputable</A
> <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:EqInstCo"
><A NAME="t%3AEqInstCo"
></A
></A
><B
>EqInstCo</B
> = <A HREF="../base-4.2.0.2/Data-Either.html#t%3AEither"
>Either</A
> <A HREF="TcType.html#t%3ATcTyVar"
>TcTyVar</A
> <A HREF="Coercion.html#t%3ACoercion"
>Coercion</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:InstOrigin"
><A NAME="t%3AInstOrigin"
></A
></A
><B
>InstOrigin</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:SigOrigin"
><A NAME="v%3ASigOrigin"
></A
></A
><B
>SigOrigin</B
> <A HREF="TcType.html#t%3ASkolemInfo"
>SkolemInfo</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:IPBindOrigin"
><A NAME="v%3AIPBindOrigin"
></A
></A
><B
>IPBindOrigin</B
> (<A HREF="BasicTypes.html#t%3AIPName"
>IPName</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:OccurrenceOf"
><A NAME="v%3AOccurrenceOf"
></A
></A
><B
>OccurrenceOf</B
> <A HREF="Name.html#t%3AName"
>Name</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:SpecPragOrigin"
><A NAME="v%3ASpecPragOrigin"
></A
></A
><B
>SpecPragOrigin</B
> <A HREF="Name.html#t%3AName"
>Name</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:IPOccOrigin"
><A NAME="v%3AIPOccOrigin"
></A
></A
><B
>IPOccOrigin</B
> (<A HREF="BasicTypes.html#t%3AIPName"
>IPName</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:LiteralOrigin"
><A NAME="v%3ALiteralOrigin"
></A
></A
><B
>LiteralOrigin</B
> (<A HREF="HsLit.html#t%3AHsOverLit"
>HsOverLit</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:NegateOrigin"
><A NAME="v%3ANegateOrigin"
></A
></A
><B
>NegateOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:ArithSeqOrigin"
><A NAME="v%3AArithSeqOrigin"
></A
></A
><B
>ArithSeqOrigin</B
> (<A HREF="HsExpr.html#t%3AArithSeqInfo"
>ArithSeqInfo</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:PArrSeqOrigin"
><A NAME="v%3APArrSeqOrigin"
></A
></A
><B
>PArrSeqOrigin</B
> (<A HREF="HsExpr.html#t%3AArithSeqInfo"
>ArithSeqInfo</A
> <A HREF="Name.html#t%3AName"
>Name</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:TupleOrigin"
><A NAME="v%3ATupleOrigin"
></A
></A
><B
>TupleOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:InstSigOrigin"
><A NAME="v%3AInstSigOrigin"
></A
></A
><B
>InstSigOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:ExprSigOrigin"
><A NAME="v%3AExprSigOrigin"
></A
></A
><B
>ExprSigOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:RecordUpdOrigin"
><A NAME="v%3ARecordUpdOrigin"
></A
></A
><B
>RecordUpdOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:ViewPatOrigin"
><A NAME="v%3AViewPatOrigin"
></A
></A
><B
>ViewPatOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:InstScOrigin"
><A NAME="v%3AInstScOrigin"
></A
></A
><B
>InstScOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:NoScOrigin"
><A NAME="v%3ANoScOrigin"
></A
></A
><B
>NoScOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:DerivOrigin"
><A NAME="v%3ADerivOrigin"
></A
></A
><B
>DerivOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:StandAloneDerivOrigin"
><A NAME="v%3AStandAloneDerivOrigin"
></A
></A
><B
>StandAloneDerivOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:DefaultOrigin"
><A NAME="v%3ADefaultOrigin"
></A
></A
><B
>DefaultOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:DoOrigin"
><A NAME="v%3ADoOrigin"
></A
></A
><B
>DoOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:ProcOrigin"
><A NAME="v%3AProcOrigin"
></A
></A
><B
>ProcOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:ImplicOrigin"
><A NAME="v%3AImplicOrigin"
></A
></A
><B
>ImplicOrigin</B
> <A HREF="Outputable.html#t%3ASDoc"
>SDoc</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:EqOrigin"
><A NAME="v%3AEqOrigin"
></A
></A
><B
>EqOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:AnnOrigin"
><A NAME="v%3AAnnOrigin"
></A
></A
><B
>AnnOrigin</B
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:InstOrigin')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:InstOrigin" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Outputable.html#t%3AOutputable"
>Outputable</A
> <A HREF="TcRnTypes.html#t%3AInstOrigin"
>InstOrigin</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:InstLoc"
><A NAME="t%3AInstLoc"
></A
></A
><B
>InstLoc</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:InstLoc"
><A NAME="v%3AInstLoc"
></A
></A
><B
>InstLoc</B
> <A HREF="TcRnTypes.html#t%3AInstOrigin"
>InstOrigin</A
> <A HREF="SrcLoc.html#t%3ASrcSpan"
>SrcSpan</A
> [<A HREF="TcRnTypes.html#t%3AErrCtxt"
>ErrCtxt</A
>]</TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:pprInstLoc"
><A NAME="v%3ApprInstLoc"
></A
></A
><B
>pprInstLoc</B
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
> -&gt; <A HREF="Outputable.html#t%3ASDoc"
>SDoc</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:pprInstArising"
><A NAME="v%3ApprInstArising"
></A
></A
><B
>pprInstArising</B
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="Outputable.html#t%3ASDoc"
>SDoc</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:instLocSpan"
><A NAME="v%3AinstLocSpan"
></A
></A
><B
>instLocSpan</B
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
> -&gt; <A HREF="SrcLoc.html#t%3ASrcSpan"
>SrcSpan</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:instLocOrigin"
><A NAME="v%3AinstLocOrigin"
></A
></A
><B
>instLocOrigin</B
> :: <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
> -&gt; <A HREF="TcRnTypes.html#t%3AInstOrigin"
>InstOrigin</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:setInstLoc"
><A NAME="v%3AsetInstLoc"
></A
></A
><B
>setInstLoc</B
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
> -&gt; <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:LIE"
><A NAME="t%3ALIE"
></A
></A
><B
>LIE</B
> = <A HREF="Bag.html#t%3ABag"
>Bag</A
> <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:emptyLIE"
><A NAME="v%3AemptyLIE"
></A
></A
><B
>emptyLIE</B
> :: <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:unitLIE"
><A NAME="v%3AunitLIE"
></A
></A
><B
>unitLIE</B
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:plusLIE"
><A NAME="v%3AplusLIE"
></A
></A
><B
>plusLIE</B
> :: <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
> -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
> -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:consLIE"
><A NAME="v%3AconsLIE"
></A
></A
><B
>consLIE</B
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
> -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:instLoc"
><A NAME="v%3AinstLoc"
></A
></A
><B
>instLoc</B
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="TcRnTypes.html#t%3AInstLoc"
>InstLoc</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:instSpan"
><A NAME="v%3AinstSpan"
></A
></A
><B
>instSpan</B
> :: <A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
> -&gt; <A HREF="SrcLoc.html#t%3ASrcSpan"
>SrcSpan</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:plusLIEs"
><A NAME="v%3AplusLIEs"
></A
></A
><B
>plusLIEs</B
> :: [<A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
>] -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:mkLIE"
><A NAME="v%3AmkLIE"
></A
></A
><B
>mkLIE</B
> :: [<A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
>] -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:isEmptyLIE"
><A NAME="v%3AisEmptyLIE"
></A
></A
><B
>isEmptyLIE</B
> :: <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
> -&gt; <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:lieToList"
><A NAME="v%3AlieToList"
></A
></A
><B
>lieToList</B
> :: <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
> -&gt; [<A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
>]</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:listToLIE"
><A NAME="v%3AlistToLIE"
></A
></A
><B
>listToLIE</B
> :: [<A HREF="TcRnTypes.html#t%3AInst"
>Inst</A
>] -&gt; <A HREF="TcRnTypes.html#t%3ALIE"
>LIE</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:TcId"
><A NAME="t%3ATcId"
></A
></A
><B
>TcId</B
> = <A HREF="Var.html#t%3AId"
>Id</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:TcIdSet"
><A NAME="t%3ATcIdSet"
></A
></A
><B
>TcIdSet</B
> = <A HREF="VarSet.html#t%3AIdSet"
>IdSet</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:TcDictBinds"
><A NAME="t%3ATcDictBinds"
></A
></A
><B
>TcDictBinds</B
> = <A HREF="HsBinds.html#t%3ADictBinds"
>DictBinds</A
> <A HREF="TcRnTypes.html#t%3ATcId"
>TcId</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:TcTyVarBind"
><A NAME="t%3ATcTyVarBind"
></A
></A
><B
>TcTyVarBind</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:TcTyVarBind"
><A NAME="v%3ATcTyVarBind"
></A
></A
><B
>TcTyVarBind</B
> <A HREF="TcType.html#t%3ATcTyVar"
>TcTyVar</A
> <A HREF="TcType.html#t%3ATcType"
>TcType</A
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:TcTyVarBind')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:TcTyVarBind" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Outputable.html#t%3AOutputable"
>Outputable</A
> <A HREF="TcRnTypes.html#t%3ATcTyVarBind"
>TcTyVarBind</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:TcTyVarBinds"
><A NAME="t%3ATcTyVarBinds"
></A
></A
><B
>TcTyVarBinds</B
> = <A HREF="Bag.html#t%3ABag"
>Bag</A
> <A HREF="TcRnTypes.html#t%3ATcTyVarBind"
>TcTyVarBind</A
></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
>