Sophie

Sophie

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

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>DsUtils</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_DsUtils.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">DsUtils</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Utility functions for constructing Core syntax, principally for desugaring
</p></div></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:EquationInfo" class="def">EquationInfo</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:EqnInfo" class="def">EqnInfo</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:eqn_pats" class="def">eqn_pats</a> :: [<a href="HsPat.html#t:Pat">Pat</a> <a href="Var.html#t:Id">Id</a>]</dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:eqn_rhs" class="def">eqn_rhs</a> :: <a href="DsUtils.html#t:MatchResult">MatchResult</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:EquationInfo" class="caption collapser" onclick="toggleSection('i:EquationInfo')">Instances</p><div id="section.i:EquationInfo" class="show"><table><tr><td class="src"><a href="Outputable.html#t:Outputable">Outputable</a> <a href="DsUtils.html#t:EquationInfo">EquationInfo</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:firstPat" class="def">firstPat</a> :: <a href="DsUtils.html#t:EquationInfo">EquationInfo</a> -&gt; <a href="HsPat.html#t:Pat">Pat</a> <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:shiftEqns" class="def">shiftEqns</a> :: [<a href="DsUtils.html#t:EquationInfo">EquationInfo</a>] -&gt; [<a href="DsUtils.html#t:EquationInfo">EquationInfo</a>]</p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:MatchResult" class="def">MatchResult</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:MatchResult" class="def">MatchResult</a> <a href="DsUtils.html#t:CanItFail">CanItFail</a> (<a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="DsMonad.html#t:DsM">DsM</a> <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a>)</td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:CanItFail" class="def">CanItFail</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:CanFail" class="def">CanFail</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:CantFail" class="def">CantFail</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="top"><p class="src"><a name="v:cantFailMatchResult" class="def">cantFailMatchResult</a> :: <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:alwaysFailMatchResult" class="def">alwaysFailMatchResult</a> :: <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:extractMatchResult" class="def">extractMatchResult</a> :: <a href="DsUtils.html#t:MatchResult">MatchResult</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="DsMonad.html#t:DsM">DsM</a> <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a></p></div><div class="top"><p class="src"><a name="v:combineMatchResults" class="def">combineMatchResults</a> :: <a href="DsUtils.html#t:MatchResult">MatchResult</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:adjustMatchResult" class="def">adjustMatchResult</a> :: <a href="DsMonad.html#t:DsWrapper">DsWrapper</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:adjustMatchResultDs" class="def">adjustMatchResultDs</a> :: (<a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="DsMonad.html#t:DsM">DsM</a> <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a>) -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:mkCoLetMatchResult" class="def">mkCoLetMatchResult</a> :: <a href="CoreSyn.html#t:CoreBind">CoreBind</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:mkViewMatchResult" class="def">mkViewMatchResult</a> :: <a href="Var.html#t:Id">Id</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="Var.html#t:Id">Id</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:mkGuardedMatchResult" class="def">mkGuardedMatchResult</a> :: <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:matchCanFail" class="def">matchCanFail</a> :: <a href="DsUtils.html#t:MatchResult">MatchResult</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:mkEvalMatchResult" class="def">mkEvalMatchResult</a> :: <a href="Var.html#t:Id">Id</a> -&gt; <a href="Type.html#t:Type">Type</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a> -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:mkCoPrimCaseMatchResult" class="def">mkCoPrimCaseMatchResult</a> :: <a href="Var.html#t:Id">Id</a> -&gt; <a href="Type.html#t:Type">Type</a> -&gt; [(<a href="Literal.html#t:Literal">Literal</a>, <a href="DsUtils.html#t:MatchResult">MatchResult</a>)] -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:mkCoAlgCaseMatchResult" class="def">mkCoAlgCaseMatchResult</a> :: <a href="Var.html#t:Id">Id</a> -&gt; <a href="Type.html#t:Type">Type</a> -&gt; [(<a href="DataCon.html#t:DataCon">DataCon</a>, [<a href="CoreSyn.html#t:CoreBndr">CoreBndr</a>], <a href="DsUtils.html#t:MatchResult">MatchResult</a>)] -&gt; <a href="DsUtils.html#t:MatchResult">MatchResult</a></p></div><div class="top"><p class="src"><a name="v:wrapBind" class="def">wrapBind</a> :: <a href="Var.html#t:Var">Var</a> -&gt; <a href="Var.html#t:Var">Var</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a></p></div><div class="top"><p class="src"><a name="v:wrapBinds" class="def">wrapBinds</a> :: [(<a href="Var.html#t:Var">Var</a>, <a href="Var.html#t:Var">Var</a>)] -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a></p></div><div class="top"><p class="src"><a name="v:mkErrorAppDs" class="def">mkErrorAppDs</a> :: <a href="Var.html#t:Id">Id</a> -&gt; <a href="Type.html#t:Type">Type</a> -&gt; <a href="Outputable.html#t:SDoc">SDoc</a> -&gt; <a href="DsMonad.html#t:DsM">DsM</a> <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a></p></div><div class="top"><p class="src"><a name="v:mkCoreAppDs" class="def">mkCoreAppDs</a> :: <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a></p></div><div class="top"><p class="src"><a name="v:mkCoreAppsDs" class="def">mkCoreAppsDs</a> :: <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; [<a href="CoreSyn.html#t:CoreExpr">CoreExpr</a>] -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a></p></div><div class="top"><p class="src"><a name="v:seqVar" class="def">seqVar</a> :: <a href="Var.html#t:Var">Var</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a></p></div><div class="top"><p class="src"><a name="v:mkLHsVarPatTup" class="def">mkLHsVarPatTup</a> :: [<a href="Var.html#t:Id">Id</a>] -&gt; <a href="HsPat.html#t:LPat">LPat</a> <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:mkLHsPatTup" class="def">mkLHsPatTup</a> :: [<a href="HsPat.html#t:LPat">LPat</a> <a href="Var.html#t:Id">Id</a>] -&gt; <a href="HsPat.html#t:LPat">LPat</a> <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:mkVanillaTuplePat" class="def">mkVanillaTuplePat</a> :: [<a href="HsPat.html#t:OutPat">OutPat</a> <a href="Var.html#t:Id">Id</a>] -&gt; <a href="BasicTypes.html#t:Boxity">Boxity</a> -&gt; <a href="HsPat.html#t:Pat">Pat</a> <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:mkBigLHsVarTup" class="def">mkBigLHsVarTup</a> :: [<a href="Var.html#t:Id">Id</a>] -&gt; <a href="HsExpr.html#t:LHsExpr">LHsExpr</a> <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:mkBigLHsTup" class="def">mkBigLHsTup</a> :: [<a href="HsExpr.html#t:LHsExpr">LHsExpr</a> <a href="Var.html#t:Id">Id</a>] -&gt; <a href="HsExpr.html#t:LHsExpr">LHsExpr</a> <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:mkBigLHsVarPatTup" class="def">mkBigLHsVarPatTup</a> :: [<a href="Var.html#t:Id">Id</a>] -&gt; <a href="HsPat.html#t:LPat">LPat</a> <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:mkBigLHsPatTup" class="def">mkBigLHsPatTup</a> :: [<a href="HsPat.html#t:LPat">LPat</a> <a href="Var.html#t:Id">Id</a>] -&gt; <a href="HsPat.html#t:LPat">LPat</a> <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:mkSelectorBinds" class="def">mkSelectorBinds</a> :: [<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="CoreSyn.html#t:Tickish">Tickish</a> <a href="Var.html#t:Id">Id</a>)] -&gt; <a href="HsPat.html#t:LPat">LPat</a> <a href="Var.html#t:Id">Id</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="DsMonad.html#t:DsM">DsM</a> [(<a href="Var.html#t:Id">Id</a>, <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a>)]</p></div><div class="top"><p class="src"><a name="v:dsSyntaxTable" class="def">dsSyntaxTable</a> :: <a href="HsExpr.html#t:SyntaxTable">SyntaxTable</a> <a href="Var.html#t:Id">Id</a> -&gt; <a href="DsMonad.html#t:DsM">DsM</a> ([<a href="CoreSyn.html#t:CoreBind">CoreBind</a>], [(<a href="Name.html#t:Name">Name</a>, <a href="Var.html#t:Id">Id</a>)])</p></div><div class="top"><p class="src"><a name="v:lookupEvidence" class="def">lookupEvidence</a> :: [(<a href="Name.html#t:Name">Name</a>, <a href="Var.html#t:Id">Id</a>)] -&gt; <a href="Name.html#t:Name">Name</a> -&gt; <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:selectSimpleMatchVarL" class="def">selectSimpleMatchVarL</a> :: <a href="HsPat.html#t:LPat">LPat</a> <a href="Var.html#t:Id">Id</a> -&gt; <a href="DsMonad.html#t:DsM">DsM</a> <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:selectMatchVars" class="def">selectMatchVars</a> :: [<a href="HsPat.html#t:Pat">Pat</a> <a href="Var.html#t:Id">Id</a>] -&gt; <a href="DsMonad.html#t:DsM">DsM</a> [<a href="Var.html#t:Id">Id</a>]</p></div><div class="top"><p class="src"><a name="v:selectMatchVar" class="def">selectMatchVar</a> :: <a href="HsPat.html#t:Pat">Pat</a> <a href="Var.html#t:Id">Id</a> -&gt; <a href="DsMonad.html#t:DsM">DsM</a> <a href="Var.html#t:Id">Id</a></p></div><div class="top"><p class="src"><a name="v:mkOptTickBox" class="def">mkOptTickBox</a> :: <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="CoreSyn.html#t:Tickish">Tickish</a> <a href="Var.html#t:Id">Id</a>) -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a></p></div><div class="top"><p class="src"><a name="v:mkBinaryTickBox" class="def">mkBinaryTickBox</a> :: <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -&gt; <a href="DsMonad.html#t:DsM">DsM</a> <a href="CoreSyn.html#t:CoreExpr">CoreExpr</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>