<!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 > -> <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 > -> <A HREF="TcRnTypes.html#t%3AImportAvails" >ImportAvails</A > -> <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 >)] -> <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 > -> <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 > -> <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 -> <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 -> <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 > -> <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 > -> <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 > -> <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 > -> <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 > -> <A HREF="TcRnTypes.html#t%3AInstLoc" >InstLoc</A > -> <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 > -> <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 > -> <A HREF="TcRnTypes.html#t%3ALIE" >LIE</A > -> <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 > -> <A HREF="TcRnTypes.html#t%3ALIE" >LIE</A > -> <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 > -> <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 > -> <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 >] -> <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 >] -> <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 > -> <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 > -> [<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 >] -> <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 > => 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 > -> <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 > => import was <TT >import Foo ()</TT > </LI ><LI > <TT >False</TT > => 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 > -> <A HREF="TcRnTypes.html#t%3AImportAvails" >ImportAvails</A > -> <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 >)] -> <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 > -> <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 > -> <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 -> <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 -> <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 > -> <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 > -> <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 > -> <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 > -> <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 > -> <A HREF="TcRnTypes.html#t%3AInstLoc" >InstLoc</A > -> <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 > -> <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 > -> <A HREF="TcRnTypes.html#t%3ALIE" >LIE</A > -> <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 > -> <A HREF="TcRnTypes.html#t%3ALIE" >LIE</A > -> <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 > -> <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 > -> <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 >] -> <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 >] -> <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 > -> <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 > -> [<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 >] -> <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 >