<!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>Vectorise.Monad.Local</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_Vectorise-Monad-Local.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">Vectorise.Monad.Local</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:readLEnv">readLEnv</a> :: (<a href="Vectorise-Env.html#t:LocalEnv">LocalEnv</a> -> a) -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a</li><li class="src short"><a href="#v:setLEnv">setLEnv</a> :: <a href="Vectorise-Env.html#t:LocalEnv">LocalEnv</a> -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> ()</li><li class="src short"><a href="#v:updLEnv">updLEnv</a> :: (<a href="Vectorise-Env.html#t:LocalEnv">LocalEnv</a> -> <a href="Vectorise-Env.html#t:LocalEnv">LocalEnv</a>) -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> ()</li><li class="src short"><a href="#v:localV">localV</a> :: <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a</li><li class="src short"><a href="#v:closedV">closedV</a> :: <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a</li><li class="src short"><a href="#v:getBindName">getBindName</a> :: <a href="Vectorise-Monad-Base.html#t:VM">VM</a> <a href="FastString.html#t:FastString">FastString</a></li><li class="src short"><a href="#v:inBind">inBind</a> :: <a href="Var.html#t:Id">Id</a> -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a</li><li class="src short"><a href="#v:lookupTyVarPA">lookupTyVarPA</a> :: <a href="Var.html#t:Var">Var</a> -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> (<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a>)</li><li class="src short"><a href="#v:defLocalTyVar">defLocalTyVar</a> :: <a href="Var.html#t:TyVar">TyVar</a> -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> ()</li><li class="src short"><a href="#v:defLocalTyVarWithPA">defLocalTyVarWithPA</a> :: <a href="Var.html#t:TyVar">TyVar</a> -> <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> ()</li><li class="src short"><a href="#v:localTyVars">localTyVars</a> :: <a href="Vectorise-Monad-Base.html#t:VM">VM</a> [<a href="Var.html#t:TyVar">TyVar</a>]</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:readLEnv" class="def">readLEnv</a> :: (<a href="Vectorise-Env.html#t:LocalEnv">LocalEnv</a> -> a) -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a</p><div class="doc"><p>Project something from the local environment. </p></div></div><div class="top"><p class="src"><a name="v:setLEnv" class="def">setLEnv</a> :: <a href="Vectorise-Env.html#t:LocalEnv">LocalEnv</a> -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> ()</p><div class="doc"><p>Set the local environment. </p></div></div><div class="top"><p class="src"><a name="v:updLEnv" class="def">updLEnv</a> :: (<a href="Vectorise-Env.html#t:LocalEnv">LocalEnv</a> -> <a href="Vectorise-Env.html#t:LocalEnv">LocalEnv</a>) -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> ()</p><div class="doc"><p>Update the enviroment using the provided function. </p></div></div><div class="top"><p class="src"><a name="v:localV" class="def">localV</a> :: <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a</p><div class="doc"><p>Perform a computation in its own local environment. This does not alter the environment of the current state. </p></div></div><div class="top"><p class="src"><a name="v:closedV" class="def">closedV</a> :: <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a</p><div class="doc"><p>Perform a computation in an empty local environment. </p></div></div><div class="top"><p class="src"><a name="v:getBindName" class="def">getBindName</a> :: <a href="Vectorise-Monad-Base.html#t:VM">VM</a> <a href="FastString.html#t:FastString">FastString</a></p><div class="doc"><p>Get the name of the local binding currently being vectorised. </p></div></div><div class="top"><p class="src"><a name="v:inBind" class="def">inBind</a> :: <a href="Var.html#t:Id">Id</a> -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> a</p><div class="doc"><p>Run a vectorisation computation in a local environment, with this id set as the current binding. </p></div></div><div class="top"><p class="src"><a name="v:lookupTyVarPA" class="def">lookupTyVarPA</a> :: <a href="Var.html#t:Var">Var</a> -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> (<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a>)</p><div class="doc"><p>Lookup a PA tyvars from the local environment. </p></div></div><div class="top"><p class="src"><a name="v:defLocalTyVar" class="def">defLocalTyVar</a> :: <a href="Var.html#t:TyVar">TyVar</a> -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> ()</p><div class="doc"><p>Add a tyvar to the local environment. </p></div></div><div class="top"><p class="src"><a name="v:defLocalTyVarWithPA" class="def">defLocalTyVarWithPA</a> :: <a href="Var.html#t:TyVar">TyVar</a> -> <a href="CoreSyn.html#t:CoreExpr">CoreExpr</a> -> <a href="Vectorise-Monad-Base.html#t:VM">VM</a> ()</p><div class="doc"><p>Add mapping between a tyvar and pa dictionary to the local environment. </p></div></div><div class="top"><p class="src"><a name="v:localTyVars" class="def">localTyVars</a> :: <a href="Vectorise-Monad-Base.html#t:VM">VM</a> [<a href="Var.html#t:TyVar">TyVar</a>]</p><div class="doc"><p>Get the set of tyvars from the local environment. </p></div></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>