Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-release > by-pkgid > 6e204a966e8c42d976f99a1700ce5f20 > files > 3117

ghc-7.4.2-4.mga5.i586.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>TcSMonad</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_TcSMonad.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ghc-7.4.2: The GHC API</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">TcSMonad</p></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:WorkList" class="def">WorkList</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:WorkList" class="def">WorkList</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:wl_eqs" class="def">wl_eqs</a> :: [<a href="TcSMonad.html#t:Ct">Ct</a>]</dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:wl_funeqs" class="def">wl_funeqs</a> :: [<a href="TcSMonad.html#t:Ct">Ct</a>]</dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:wl_rest" class="def">wl_rest</a> :: [<a href="TcSMonad.html#t:Ct">Ct</a>]</dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:WorkList" class="caption collapser" onclick="toggleSection('i:WorkList')">Instances</p><div id="section.i:WorkList" class="show"><table><tr><td class="src"><a href="Outputable.html#t:Outputable">Outputable</a> <a href="TcSMonad.html#t:WorkList">WorkList</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:isEmptyWorkList" class="def">isEmptyWorkList</a> :: <a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:emptyWorkList" class="def">emptyWorkList</a> :: <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:workListFromEq" class="def">workListFromEq</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:workListFromNonEq" class="def">workListFromNonEq</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:workListFromCt" class="def">workListFromCt</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:extendWorkListEq" class="def">extendWorkListEq</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:extendWorkListNonEq" class="def">extendWorkListNonEq</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:extendWorkListCt" class="def">extendWorkListCt</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:appendWorkListCt" class="def">appendWorkListCt</a> :: [<a href="TcSMonad.html#t:Ct">Ct</a>] -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:appendWorkListEqs" class="def">appendWorkListEqs</a> :: [<a href="TcSMonad.html#t:Ct">Ct</a>] -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:unionWorkList" class="def">unionWorkList</a> :: <a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:selectWorkItem" class="def">selectWorkItem</a> :: <a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; (<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="TcSMonad.html#t:Ct">Ct</a>, <a href="TcSMonad.html#t:WorkList">WorkList</a>)</p></div><div class="top"><p class="src"><a name="v:getTcSWorkList" class="def">getTcSWorkList</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcSMonad.html#t:WorkList">WorkList</a></p></div><div class="top"><p class="src"><a name="v:updWorkListTcS" class="def">updWorkListTcS</a> :: (<a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a>) -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:updWorkListTcS_return" class="def">updWorkListTcS_return</a> ::  (<a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; (a, <a href="TcSMonad.html#t:WorkList">WorkList</a>)) -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a</p></div><div class="top"><p class="src"><a name="v:keepWanted" class="def">keepWanted</a> :: <a href="TcRnTypes.html#t:Cts">Cts</a> -&gt; <a href="TcRnTypes.html#t:Cts">Cts</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:Ct" class="def">Ct</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:CDictCan" class="def">CDictCan</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:cc_id" class="def">cc_id</a> :: <a href="Var.html#t:EvVar">EvVar</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_flavor" class="def">cc_flavor</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_class" class="def">cc_class</a> :: <a href="Class.html#t:Class">Class</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_tyargs" class="def">cc_tyargs</a> :: [<a href="TcSMonad.html#t:Xi">Xi</a>]</dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_depth" class="def">cc_depth</a> :: <a href="TcRnTypes.html#t:SubGoalDepth">SubGoalDepth</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr><tr><td class="src"><a name="v:CIPCan" class="def">CIPCan</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:cc_id" class="def">cc_id</a> :: <a href="Var.html#t:EvVar">EvVar</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_flavor" class="def">cc_flavor</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_ip_nm" class="def">cc_ip_nm</a> :: <a href="BasicTypes.html#t:IPName">IPName</a> <a href="Name.html#t:Name">Name</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_ip_ty" class="def">cc_ip_ty</a> :: <a href="TcType.html#t:TcTauType">TcTauType</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_depth" class="def">cc_depth</a> :: <a href="TcRnTypes.html#t:SubGoalDepth">SubGoalDepth</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr><tr><td class="src"><a name="v:CIrredEvCan" class="def">CIrredEvCan</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:cc_id" class="def">cc_id</a> :: <a href="Var.html#t:EvVar">EvVar</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_flavor" class="def">cc_flavor</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_ty" class="def">cc_ty</a> :: <a href="TcSMonad.html#t:Xi">Xi</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_depth" class="def">cc_depth</a> :: <a href="TcRnTypes.html#t:SubGoalDepth">SubGoalDepth</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr><tr><td class="src"><a name="v:CTyEqCan" class="def">CTyEqCan</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:cc_id" class="def">cc_id</a> :: <a href="Var.html#t:EvVar">EvVar</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_flavor" class="def">cc_flavor</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_tyvar" class="def">cc_tyvar</a> :: <a href="TcType.html#t:TcTyVar">TcTyVar</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_rhs" class="def">cc_rhs</a> :: <a href="TcSMonad.html#t:Xi">Xi</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_depth" class="def">cc_depth</a> :: <a href="TcRnTypes.html#t:SubGoalDepth">SubGoalDepth</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr><tr><td class="src"><a name="v:CFunEqCan" class="def">CFunEqCan</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:cc_id" class="def">cc_id</a> :: <a href="Var.html#t:EvVar">EvVar</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_flavor" class="def">cc_flavor</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_fun" class="def">cc_fun</a> :: <a href="TyCon.html#t:TyCon">TyCon</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_tyargs" class="def">cc_tyargs</a> :: [<a href="TcSMonad.html#t:Xi">Xi</a>]</dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_rhs" class="def">cc_rhs</a> :: <a href="TcSMonad.html#t:Xi">Xi</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_depth" class="def">cc_depth</a> :: <a href="TcRnTypes.html#t:SubGoalDepth">SubGoalDepth</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr><tr><td class="src"><a name="v:CNonCanonical" class="def">CNonCanonical</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:cc_id" class="def">cc_id</a> :: <a href="Var.html#t:EvVar">EvVar</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_flavor" class="def">cc_flavor</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cc_depth" class="def">cc_depth</a> :: <a href="TcRnTypes.html#t:SubGoalDepth">SubGoalDepth</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:Ct" class="caption collapser" onclick="toggleSection('i:Ct')">Instances</p><div id="section.i:Ct" class="show"><table><tr><td class="src"><a href="Outputable.html#t:Outputable">Outputable</a> <a href="TcSMonad.html#t:Ct">Ct</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Xi" class="def">Xi</a> = <a href="Type.html#t:Type">Type</a></p></div><div class="top"><p class="src"><a name="v:tyVarsOfCt" class="def">tyVarsOfCt</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="TcType.html#t:TcTyVarSet">TcTyVarSet</a></p></div><div class="top"><p class="src"><a name="v:tyVarsOfCts" class="def">tyVarsOfCts</a> :: <a href="TcRnTypes.html#t:Cts">Cts</a> -&gt; <a href="TcType.html#t:TcTyVarSet">TcTyVarSet</a></p></div><div class="top"><p class="src"><a name="v:tyVarsOfCDicts" class="def">tyVarsOfCDicts</a> :: <a href="TcRnTypes.html#t:Cts">Cts</a> -&gt; <a href="TcType.html#t:TcTyVarSet">TcTyVarSet</a></p></div><div class="top"><p class="src"><a name="v:emitFrozenError" class="def">emitFrozenError</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="Var.html#t:EvVar">EvVar</a> -&gt; <a href="TcRnTypes.html#t:SubGoalDepth">SubGoalDepth</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:isWanted" class="def">isWanted</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:isGivenOrSolved" class="def">isGivenOrSolved</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:isDerived" class="def">isDerived</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:isGivenOrSolvedCt" class="def">isGivenOrSolvedCt</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:isGivenCt_maybe" class="def">isGivenCt_maybe</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="TcRnTypes.html#t:GivenKind">GivenKind</a></p></div><div class="top"><p class="src"><a name="v:isWantedCt" class="def">isWantedCt</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:isDerivedCt" class="def">isDerivedCt</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:pprFlavorArising" class="def">pprFlavorArising</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="Outputable.html#t:SDoc">SDoc</a></p></div><div class="top"><p class="src"><a name="v:isFlexiTcsTv" class="def">isFlexiTcsTv</a> :: <a href="Var.html#t:TyVar">TyVar</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:canRewrite" class="def">canRewrite</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:canSolve" class="def">canSolve</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:combineCtLoc" class="def">combineCtLoc</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcRnTypes.html#t:WantedLoc">WantedLoc</a></p></div><div class="top"><p class="src"><a name="v:mkSolvedFlavor" class="def">mkSolvedFlavor</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcRnTypes.html#t:SkolemInfo">SkolemInfo</a> -&gt; <a href="TcEvidence.html#t:EvTerm">EvTerm</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></p></div><div class="top"><p class="src"><a name="v:mkGivenFlavor" class="def">mkGivenFlavor</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcRnTypes.html#t:SkolemInfo">SkolemInfo</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></p></div><div class="top"><p class="src"><a name="v:mkWantedFlavor" class="def">mkWantedFlavor</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></p></div><div class="top"><p class="src"><a name="v:getWantedLoc" class="def">getWantedLoc</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="TcRnTypes.html#t:WantedLoc">WantedLoc</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:TcS" class="def">TcS</a> a </p><div class="subs instances"><p id="control.i:TcS" class="caption collapser" onclick="toggleSection('i:TcS')">Instances</p><div id="section.i:TcS" class="show"><table><tr><td class="src"><a href="../base-4.5.1.0/Control-Monad.html#t:Monad">Monad</a> <a href="TcSMonad.html#t:TcS">TcS</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="../base-4.5.1.0/Control-Monad.html#t:Functor">Functor</a> <a href="TcSMonad.html#t:TcS">TcS</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:runTcS" class="def">runTcS</a> ::  <a href="TcSMonad.html#t:SimplContext">SimplContext</a> -&gt; <a href="TcRnTypes.html#t:Untouchables">Untouchables</a> -&gt; <a href="TcSMonad.html#t:InertSet">InertSet</a> -&gt; <a href="TcSMonad.html#t:WorkList">WorkList</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a -&gt; <a href="TcRnTypes.html#t:TcM">TcM</a> (a, <a href="Bag.html#t:Bag">Bag</a> <a href="TcEvidence.html#t:EvBind">EvBind</a>)</p></div><div class="top"><p class="src"><a name="v:failTcS" class="def">failTcS</a> ::  <a href="Outputable.html#t:SDoc">SDoc</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a</p></div><div class="top"><p class="src"><a name="v:panicTcS" class="def">panicTcS</a> ::  <a href="Outputable.html#t:SDoc">SDoc</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a</p></div><div class="top"><p class="src"><a name="v:traceTcS" class="def">traceTcS</a> :: <a href="../base-4.5.1.0/Data-String.html#t:String">String</a> -&gt; <a href="Outputable.html#t:SDoc">SDoc</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:traceFireTcS" class="def">traceFireTcS</a> :: <a href="TcRnTypes.html#t:SubGoalDepth">SubGoalDepth</a> -&gt; <a href="Outputable.html#t:SDoc">SDoc</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:bumpStepCountTcS" class="def">bumpStepCountTcS</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:doWithInert" class="def">doWithInert</a> ::  <a href="TcSMonad.html#t:InertSet">InertSet</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a</p></div><div class="top"><p class="src"><a name="v:tryTcS" class="def">tryTcS</a> ::  <a href="TcSMonad.html#t:TcS">TcS</a> a -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a</p></div><div class="top"><p class="src"><a name="v:nestImplicTcS" class="def">nestImplicTcS</a> ::  <a href="TcEvidence.html#t:EvBindsVar">EvBindsVar</a> -&gt; <a href="TcSMonad.html#t:TcsUntouchables">TcsUntouchables</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a</p></div><div class="top"><p class="src"><a name="v:recoverTcS" class="def">recoverTcS</a> ::  <a href="TcSMonad.html#t:TcS">TcS</a> a -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a</p></div><div class="top"><p class="src"><a name="v:wrapErrTcS" class="def">wrapErrTcS</a> ::  <a href="TcRnTypes.html#t:TcM">TcM</a> a -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a</p></div><div class="top"><p class="src"><a name="v:wrapWarnTcS" class="def">wrapWarnTcS</a> ::  <a href="TcRnTypes.html#t:TcM">TcM</a> a -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a</p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:SimplContext" class="def">SimplContext</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:SimplInfer" class="def">SimplInfer</a> <a href="Outputable.html#t:SDoc">SDoc</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:SimplRuleLhs" class="def">SimplRuleLhs</a> <a href="BasicTypes.html#t:RuleName">RuleName</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:SimplInteractive" class="def">SimplInteractive</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:SimplCheck" class="def">SimplCheck</a> <a href="Outputable.html#t:SDoc">SDoc</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:SimplContext" class="caption collapser" onclick="toggleSection('i:SimplContext')">Instances</p><div id="section.i:SimplContext" class="show"><table><tr><td class="src"><a href="Outputable.html#t:Outputable">Outputable</a> <a href="TcSMonad.html#t:SimplContext">SimplContext</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:isInteractive" class="def">isInteractive</a> :: <a href="TcSMonad.html#t:SimplContext">SimplContext</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:simplEqsOnly" class="def">simplEqsOnly</a> :: <a href="TcSMonad.html#t:SimplContext">SimplContext</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:performDefaulting" class="def">performDefaulting</a> :: <a href="TcSMonad.html#t:SimplContext">SimplContext</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:newEvVar" class="def">newEvVar</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcType.html#t:TcPredType">TcPredType</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcSMonad.html#t:EvVarCreated">EvVarCreated</a></p></div><div class="top"><p class="src"><a name="v:forceNewEvVar" class="def">forceNewEvVar</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcType.html#t:TcPredType">TcPredType</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="Var.html#t:EvVar">EvVar</a></p></div><div class="top"><p class="src"><a name="v:delCachedEvVar" class="def">delCachedEvVar</a> :: <a href="Var.html#t:EvVar">EvVar</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:updateFlatCache" class="def">updateFlatCache</a> :: <a href="Var.html#t:EvVar">EvVar</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TyCon.html#t:TyCon">TyCon</a> -&gt; [<a href="TcSMonad.html#t:Xi">Xi</a>] -&gt; <a href="TcType.html#t:TcType">TcType</a> -&gt; <a href="TcSMonad.html#t:FlatEqOrigin">FlatEqOrigin</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:flushFlatCache" class="def">flushFlatCache</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:newGivenEqVar" class="def">newGivenEqVar</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcType.html#t:TcType">TcType</a> -&gt; <a href="TcType.html#t:TcType">TcType</a> -&gt; <a href="TcEvidence.html#t:TcCoercion">TcCoercion</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a>, <a href="Var.html#t:EvVar">EvVar</a>)</p></div><div class="top"><p class="src"><a name="v:newEqVar" class="def">newEqVar</a> :: <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcType.html#t:TcType">TcType</a> -&gt; <a href="TcType.html#t:TcType">TcType</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcSMonad.html#t:EvVarCreated">EvVarCreated</a></p></div><div class="top"><p class="src"><a name="v:newKindConstraint" class="def">newKindConstraint</a> :: <a href="TcType.html#t:TcTyVar">TcTyVar</a> -&gt; <a href="Kind.html#t:Kind">Kind</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcSMonad.html#t:EvVarCreated">EvVarCreated</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:EvVarCreated" class="def">EvVarCreated</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:EvVarCreated" class="def">EvVarCreated</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:evc_is_new" class="def">evc_is_new</a> :: <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:evc_the_evvar" class="def">evc_the_evvar</a> :: <a href="Var.html#t:EvVar">EvVar</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr></table></div></div><div class="top"><p class="src"><a name="v:isNewEvVar" class="def">isNewEvVar</a> :: <a href="TcSMonad.html#t:EvVarCreated">EvVarCreated</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:FlatEqOrigin" class="def">FlatEqOrigin</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:WhileFlattening" class="def">WhileFlattening</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:WhenSolved" class="def">WhenSolved</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:Any" class="def">Any</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="top"><p class="src"><a name="v:origin_matches" class="def">origin_matches</a> :: <a href="TcSMonad.html#t:FlatEqOrigin">FlatEqOrigin</a> -&gt; <a href="TcSMonad.html#t:FlatEqOrigin">FlatEqOrigin</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:setEqBind" class="def">setEqBind</a> :: <a href="Var.html#t:EqVar">EqVar</a> -&gt; <a href="TcEvidence.html#t:TcCoercion">TcCoercion</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></p></div><div class="top"><p class="src"><a name="v:setEvBind" class="def">setEvBind</a> :: <a href="Var.html#t:EvVar">EvVar</a> -&gt; <a href="TcEvidence.html#t:EvTerm">EvTerm</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a></p></div><div class="top"><p class="src"><a name="v:setWantedTyBind" class="def">setWantedTyBind</a> :: <a href="TcType.html#t:TcTyVar">TcTyVar</a> -&gt; <a href="TcType.html#t:TcType">TcType</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:getInstEnvs" class="def">getInstEnvs</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="InstEnv.html#t:InstEnv">InstEnv</a>, <a href="InstEnv.html#t:InstEnv">InstEnv</a>)</p></div><div class="top"><p class="src"><a name="v:getFamInstEnvs" class="def">getFamInstEnvs</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="FamInstEnv.html#t:FamInstEnv">FamInstEnv</a>, <a href="FamInstEnv.html#t:FamInstEnv">FamInstEnv</a>)</p></div><div class="top"><p class="src"><a name="v:getTopEnv" class="def">getTopEnv</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> <a href="HscTypes.html#t:HscEnv">HscEnv</a></p></div><div class="top"><p class="src"><a name="v:getGblEnv" class="def">getGblEnv</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcRnTypes.html#t:TcGblEnv">TcGblEnv</a></p></div><div class="top"><p class="src"><a name="v:getTcEvBinds" class="def">getTcEvBinds</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcEvidence.html#t:EvBindsVar">EvBindsVar</a></p></div><div class="top"><p class="src"><a name="v:getUntouchables" class="def">getUntouchables</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcSMonad.html#t:TcsUntouchables">TcsUntouchables</a></p></div><div class="top"><p class="src"><a name="v:getTcEvBindsMap" class="def">getTcEvBindsMap</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcEvidence.html#t:EvBindMap">EvBindMap</a></p></div><div class="top"><p class="src"><a name="v:getTcSContext" class="def">getTcSContext</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcSMonad.html#t:SimplContext">SimplContext</a></p></div><div class="top"><p class="src"><a name="v:getTcSTyBinds" class="def">getTcSTyBinds</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="IOEnv.html#t:IORef">IORef</a> (<a href="VarEnv.html#t:TyVarEnv">TyVarEnv</a> (<a href="TcType.html#t:TcTyVar">TcTyVar</a>, <a href="TcType.html#t:TcType">TcType</a>)))</p></div><div class="top"><p class="src"><a name="v:getTcSTyBindsMap" class="def">getTcSTyBindsMap</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="VarEnv.html#t:TyVarEnv">TyVarEnv</a> (<a href="TcType.html#t:TcTyVar">TcTyVar</a>, <a href="TcType.html#t:TcType">TcType</a>))</p></div><div class="top"><p class="src"><a name="v:getTcSEvVarCacheMap" class="def">getTcSEvVarCacheMap</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="TrieMap.html#t:TypeMap">TypeMap</a> (<a href="Var.html#t:EvVar">EvVar</a>, <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a>))</p></div><div class="top"><p class="src"><a name="v:getTcSEvVarFlatCache" class="def">getTcSEvVarFlatCache</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="TrieMap.html#t:TypeMap">TypeMap</a> (<a href="TcEvidence.html#t:TcCoercion">TcCoercion</a>, (<a href="Type.html#t:Type">Type</a>, <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a>, <a href="TcSMonad.html#t:FlatEqOrigin">FlatEqOrigin</a>)))</p></div><div class="top"><p class="src"><a name="v:setTcSEvVarCacheMap" class="def">setTcSEvVarCacheMap</a> :: <a href="TrieMap.html#t:TypeMap">TypeMap</a> (<a href="Var.html#t:EvVar">EvVar</a>, <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a>) -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:pprEvVarCache" class="def">pprEvVarCache</a> ::  <a href="TrieMap.html#t:TypeMap">TypeMap</a> (<a href="TcEvidence.html#t:TcCoercion">TcCoercion</a>, a) -&gt; <a href="Outputable.html#t:SDoc">SDoc</a></p></div><div class="top"><p class="src"><a name="v:newFlattenSkolemTy" class="def">newFlattenSkolemTy</a> :: <a href="TcType.html#t:TcType">TcType</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcType.html#t:TcType">TcType</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:InertSet" class="def">InertSet</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:IS" class="def">IS</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:inert_eqs" class="def">inert_eqs</a> :: <a href="VarEnv.html#t:TyVarEnv">TyVarEnv</a> (<a href="TcSMonad.html#t:Ct">Ct</a>, <a href="TcEvidence.html#t:TcCoercion">TcCoercion</a>)</dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:inert_eq_tvs" class="def">inert_eq_tvs</a> :: <a href="VarEnv.html#t:InScopeSet">InScopeSet</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:inert_dicts" class="def">inert_dicts</a> :: <a href="TcSMonad.html#t:CCanMap">CCanMap</a> <a href="Class.html#t:Class">Class</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:inert_ips" class="def">inert_ips</a> :: <a href="TcSMonad.html#t:CCanMap">CCanMap</a> (<a href="BasicTypes.html#t:IPName">IPName</a> <a href="Name.html#t:Name">Name</a>)</dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:inert_funeqs" class="def">inert_funeqs</a> :: <a href="TcSMonad.html#t:CtTypeMap">CtTypeMap</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:inert_irreds" class="def">inert_irreds</a> :: <a href="TcRnTypes.html#t:Cts">Cts</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:inert_frozen" class="def">inert_frozen</a> :: <a href="TcRnTypes.html#t:Cts">Cts</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:InertSet" class="caption collapser" onclick="toggleSection('i:InertSet')">Instances</p><div id="section.i:InertSet" class="show"><table><tr><td class="src"><a href="Outputable.html#t:Outputable">Outputable</a> <a href="TcSMonad.html#t:InertSet">InertSet</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:getInertEqs" class="def">getInertEqs</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="VarEnv.html#t:TyVarEnv">TyVarEnv</a> (<a href="TcSMonad.html#t:Ct">Ct</a>, <a href="TcEvidence.html#t:TcCoercion">TcCoercion</a>), <a href="VarEnv.html#t:InScopeSet">InScopeSet</a>)</p></div><div class="top"><p class="src"><a name="v:liftInertEqsTy" class="def">liftInertEqsTy</a> :: (<a href="VarEnv.html#t:TyVarEnv">TyVarEnv</a> (<a href="TcSMonad.html#t:Ct">Ct</a>, <a href="TcEvidence.html#t:TcCoercion">TcCoercion</a>), <a href="VarEnv.html#t:InScopeSet">InScopeSet</a>) -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="Type.html#t:PredType">PredType</a> -&gt; <a href="TcEvidence.html#t:TcCoercion">TcCoercion</a></p></div><div class="top"><p class="src"><a name="v:getCtCoercion" class="def">getCtCoercion</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="TcEvidence.html#t:TcCoercion">TcCoercion</a></p></div><div class="top"><p class="src"><a name="v:emptyInert" class="def">emptyInert</a> :: <a href="TcSMonad.html#t:InertSet">InertSet</a></p></div><div class="top"><p class="src"><a name="v:getTcSInerts" class="def">getTcSInerts</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcSMonad.html#t:InertSet">InertSet</a></p></div><div class="top"><p class="src"><a name="v:updInertSet" class="def">updInertSet</a> :: <a href="TcSMonad.html#t:InertSet">InertSet</a> -&gt; AtomicInert -&gt; <a href="TcSMonad.html#t:InertSet">InertSet</a></p></div><div class="top"><p class="src"><a name="v:extractUnsolved" class="def">extractUnsolved</a> :: <a href="TcSMonad.html#t:InertSet">InertSet</a> -&gt; ((<a href="TcRnTypes.html#t:Cts">Cts</a>, <a href="TcRnTypes.html#t:Cts">Cts</a>), <a href="TcSMonad.html#t:InertSet">InertSet</a>)</p></div><div class="top"><p class="src"><a name="v:extractUnsolvedTcS" class="def">extractUnsolvedTcS</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="TcRnTypes.html#t:Cts">Cts</a>, <a href="TcRnTypes.html#t:Cts">Cts</a>)</p></div><div class="top"><p class="src"><a name="v:modifyInertTcS" class="def">modifyInertTcS</a> ::  (<a href="TcSMonad.html#t:InertSet">InertSet</a> -&gt; (a, <a href="TcSMonad.html#t:InertSet">InertSet</a>)) -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> a</p></div><div class="top"><p class="src"><a name="v:updInertSetTcS" class="def">updInertSetTcS</a> :: AtomicInert -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:partitionCCanMap" class="def">partitionCCanMap</a> ::  (<a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="TcSMonad.html#t:CCanMap">CCanMap</a> a -&gt; (<a href="TcRnTypes.html#t:Cts">Cts</a>, <a href="TcSMonad.html#t:CCanMap">CCanMap</a> a)</p></div><div class="top"><p class="src"><a name="v:partitionEqMap" class="def">partitionEqMap</a> :: (<a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="VarEnv.html#t:TyVarEnv">TyVarEnv</a> (<a href="TcSMonad.html#t:Ct">Ct</a>, <a href="TcEvidence.html#t:TcCoercion">TcCoercion</a>) -&gt; ([<a href="TcSMonad.html#t:Ct">Ct</a>], <a href="VarEnv.html#t:TyVarEnv">TyVarEnv</a> (<a href="TcSMonad.html#t:Ct">Ct</a>, <a href="TcEvidence.html#t:TcCoercion">TcCoercion</a>))</p></div><div class="top"><p class="src"><a name="v:getRelevantCts" class="def">getRelevantCts</a> :: <a href="Unique.html#t:Uniquable">Uniquable</a> a =&gt; a -&gt; <a href="TcSMonad.html#t:CCanMap">CCanMap</a> a -&gt; (<a href="TcRnTypes.html#t:Cts">Cts</a>, <a href="TcSMonad.html#t:CCanMap">CCanMap</a> a)</p></div><div class="top"><p class="src"><a name="v:extractRelevantInerts" class="def">extractRelevantInerts</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcRnTypes.html#t:Cts">Cts</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:CCanMap" class="def">CCanMap</a> a </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:CCanMap" class="def">CCanMap</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:cts_given" class="def">cts_given</a> :: <a href="UniqFM.html#t:UniqFM">UniqFM</a> <a href="TcRnTypes.html#t:Cts">Cts</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cts_derived" class="def">cts_derived</a> :: <a href="UniqFM.html#t:UniqFM">UniqFM</a> <a href="TcRnTypes.html#t:Cts">Cts</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:cts_wanted" class="def">cts_wanted</a> :: <a href="UniqFM.html#t:UniqFM">UniqFM</a> <a href="TcRnTypes.html#t:Cts">Cts</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr></table></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:CtTypeMap" class="def">CtTypeMap</a> = <a href="TrieMap.html#t:TypeMap">TypeMap</a> <a href="TcSMonad.html#t:Ct">Ct</a></p></div><div class="top"><p class="src"><a name="v:pprCtTypeMap" class="def">pprCtTypeMap</a> :: <a href="TrieMap.html#t:TypeMap">TypeMap</a> <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="Outputable.html#t:SDoc">SDoc</a></p></div><div class="top"><p class="src"><a name="v:mkPredKeyForTypeMap" class="def">mkPredKeyForTypeMap</a> :: <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="Type.html#t:PredType">PredType</a></p></div><div class="top"><p class="src"><a name="v:partitionCtTypeMap" class="def">partitionCtTypeMap</a> :: (<a href="TcSMonad.html#t:Ct">Ct</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a>) -&gt; <a href="TrieMap.html#t:TypeMap">TypeMap</a> <a href="TcSMonad.html#t:Ct">Ct</a> -&gt; (<a href="TcRnTypes.html#t:Cts">Cts</a>, <a href="TrieMap.html#t:TypeMap">TypeMap</a> <a href="TcSMonad.html#t:Ct">Ct</a>)</p></div><div class="top"><p class="src"><a name="v:instDFunTypes" class="def">instDFunTypes</a> :: [<a href="../base-4.5.1.0/Data-Either.html#t:Either">Either</a> <a href="Var.html#t:TyVar">TyVar</a> <a href="TcType.html#t:TcType">TcType</a>] -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> [<a href="TcType.html#t:TcType">TcType</a>]</p></div><div class="top"><p class="src"><a name="v:instDFunConstraints" class="def">instDFunConstraints</a> :: <a href="TcType.html#t:TcThetaType">TcThetaType</a> -&gt; <a href="TcRnTypes.html#t:CtFlavor">CtFlavor</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> [<a href="TcSMonad.html#t:EvVarCreated">EvVarCreated</a>]</p></div><div class="top"><p class="src"><a name="v:newFlexiTcSTy" class="def">newFlexiTcSTy</a> :: <a href="Kind.html#t:Kind">Kind</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcType.html#t:TcType">TcType</a></p></div><div class="top"><p class="src"><a name="v:instFlexiTcS" class="def">instFlexiTcS</a> :: <a href="Var.html#t:TyVar">TyVar</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="TcType.html#t:TcTyVar">TcTyVar</a></p></div><div class="top"><p class="src"><a name="v:compatKind" class="def">compatKind</a> :: <a href="Kind.html#t:Kind">Kind</a> -&gt; <a href="Kind.html#t:Kind">Kind</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:compatKindTcS" class="def">compatKindTcS</a> :: <a href="Kind.html#t:Kind">Kind</a> -&gt; <a href="Kind.html#t:Kind">Kind</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:isSubKindTcS" class="def">isSubKindTcS</a> :: <a href="Kind.html#t:Kind">Kind</a> -&gt; <a href="Kind.html#t:Kind">Kind</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:unifyKindTcS" class="def">unifyKindTcS</a> :: <a href="Type.html#t:Type">Type</a> -&gt; <a href="Type.html#t:Type">Type</a> -&gt; <a href="Kind.html#t:Kind">Kind</a> -&gt; <a href="Kind.html#t:Kind">Kind</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:TcsUntouchables" class="def">TcsUntouchables</a> = (<a href="TcRnTypes.html#t:Untouchables">Untouchables</a>, <a href="TcType.html#t:TcTyVarSet">TcTyVarSet</a>)</p></div><div class="top"><p class="src"><a name="v:isTouchableMetaTyVar" class="def">isTouchableMetaTyVar</a> :: <a href="TcType.html#t:TcTyVar">TcTyVar</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:isTouchableMetaTyVar_InRange" class="def">isTouchableMetaTyVar_InRange</a> :: <a href="TcSMonad.html#t:TcsUntouchables">TcsUntouchables</a> -&gt; <a href="TcType.html#t:TcTyVar">TcTyVar</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:getDefaultInfo" class="def">getDefaultInfo</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="TcSMonad.html#t:SimplContext">SimplContext</a>, [<a href="Type.html#t:Type">Type</a>], (<a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a>, <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a>))</p></div><div class="top"><p class="src"><a name="v:getDynFlags" class="def">getDynFlags</a> :: <a href="TcSMonad.html#t:TcS">TcS</a> <a href="DynFlags.html#t:DynFlags">DynFlags</a></p></div><div class="top"><p class="src"><a name="v:matchClass" class="def">matchClass</a> :: <a href="Class.html#t:Class">Class</a> -&gt; [<a href="Type.html#t:Type">Type</a>] -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="TcSMonad.html#t:MatchInstResult">MatchInstResult</a> (<a href="Var.html#t:DFunId">DFunId</a>, [<a href="../base-4.5.1.0/Data-Either.html#t:Either">Either</a> <a href="Var.html#t:TyVar">TyVar</a> <a href="TcType.html#t:TcType">TcType</a>]))</p></div><div class="top"><p class="src"><a name="v:matchFam" class="def">matchFam</a> :: <a href="TyCon.html#t:TyCon">TyCon</a> -&gt; [<a href="Type.html#t:Type">Type</a>] -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> (<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="TyCon.html#t:TyCon">TyCon</a>, [<a href="Type.html#t:Type">Type</a>]))</p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:MatchInstResult" class="def">MatchInstResult</a> mi </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:MatchInstNo" class="def">MatchInstNo</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:MatchInstSingle" class="def">MatchInstSingle</a> mi</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:MatchInstMany" class="def">MatchInstMany</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="top"><p class="src"><a name="v:checkWellStagedDFun" class="def">checkWellStagedDFun</a> :: <a href="Type.html#t:PredType">PredType</a> -&gt; <a href="Var.html#t:DFunId">DFunId</a> -&gt; <a href="TcRnTypes.html#t:WantedLoc">WantedLoc</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:warnTcS" class="def">warnTcS</a> ::  <a href="TcRnTypes.html#t:CtLoc">CtLoc</a> orig -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="Outputable.html#t:SDoc">SDoc</a> -&gt; <a href="TcSMonad.html#t:TcS">TcS</a> ()</p></div><div class="top"><p class="src"><a name="v:pprEq" class="def">pprEq</a> :: <a href="TcType.html#t:TcType">TcType</a> -&gt; <a href="TcType.html#t:TcType">TcType</a> -&gt; <a href="Outputable.html#t:SDoc">SDoc</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.11.0</p></div></body></html>