This file is indexed.

/usr/share/doc/libghc-resourcet-doc/html/Data-Acquire-Internal.html is in libghc-resourcet-doc 1.1.9-1build4.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
<!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>Data.Acquire.Internal</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script src="file:///usr/share/javascript/mathjax/MathJax.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Data-Acquire-Internal.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Data-Acquire-Internal.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">resourcet-1.1.9: Deterministic allocation and freeing of scarce resources.</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>Trustworthy</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Data.Acquire.Internal</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"><span class="keyword">newtype</span> <a href="#t:Acquire">Acquire</a> a = <a href="#v:Acquire">Acquire</a> ((<span class="keyword">forall</span> b. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="Data-Acquire-Internal.html#t:Allocated">Allocated</a> a))</li><li class="src short"><span class="keyword">data</span> <a href="#t:Allocated">Allocated</a> a = <a href="#v:Allocated">Allocated</a> !a !(<a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> ())</li><li class="src short"><a href="#v:with">with</a> :: <a href="Control-Monad-Trans-Resource.html#t:MonadBaseControl">MonadBaseControl</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> m =&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a -&gt; (a -&gt; m b) -&gt; m b</li><li class="src short"><a href="#v:withEx">withEx</a> :: (<a href="file:///usr/share/doc/libghc-exceptions-doc/html/Control-Monad-Catch.html#t:MonadMask">MonadMask</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad-IO-Class.html#t:MonadIO">MonadIO</a> m) =&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a -&gt; (a -&gt; m b) -&gt; m b</li><li class="src short"><a href="#v:mkAcquire">mkAcquire</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> a -&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> ()) -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a</li><li class="src short"><span class="keyword">data</span> <a href="#t:ReleaseType">ReleaseType</a><ul class="subs"><li>= <a href="#v:ReleaseEarly">ReleaseEarly</a></li><li>| <a href="#v:ReleaseNormal">ReleaseNormal</a></li><li>| <a href="#v:ReleaseException">ReleaseException</a></li></ul></li><li class="src short"><a href="#v:mkAcquireType">mkAcquireType</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> a -&gt; (a -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> ()) -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">newtype</span> <a id="t:Acquire" class="def">Acquire</a> a <a href="src/Data-Acquire-Internal.html#Acquire" class="link">Source</a> <a href="#t:Acquire" class="selflink">#</a></p><div class="doc"><p>A method for acquiring a scarce resource, providing the means of freeing
 it when no longer needed. This data type provides
 <code>Functor</code><em><code>Applicative</code></em><code>Monad</code> instances for composing different resources
 together. You can allocate these resources using either the <code>bracket</code>
 pattern (via <code>with</code>) or using <code>ResourceT</code> (via <code>allocateAcquire</code>).</p><p>This concept was originally introduced by Gabriel Gonzalez and described at:
 <a href="http://www.haskellforall.com/2013/06/the-resource-applicative.html">http://www.haskellforall.com/2013/06/the-resource-applicative.html</a>. The
 implementation in this package is slightly different, due to taking a
 different approach to async exception safety.</p><p>Since 1.1.0</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Acquire" class="def">Acquire</a> ((<span class="keyword">forall</span> b. <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> b -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> b) -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> (<a href="Data-Acquire-Internal.html#t:Allocated">Allocated</a> a))</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:Acquire" class="caption collapser" onclick="toggleSection('i:Acquire')">Instances</p><div id="section.i:Acquire" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Acquire:Monad:1" class="instance expander" onclick="toggleSection('i:id:Acquire:Monad:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad.html#t:Monad">Monad</a> <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a></span> <a href="src/Data-Acquire-Internal.html#line-59" class="link">Source</a> <a href="#t:Acquire" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Acquire:Monad:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-62--62--61-">(&gt;&gt;=)</a> :: <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a -&gt; (a -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> b) -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> b <a href="#v:-62--62--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62--62-">(&gt;&gt;)</a> :: <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> b -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> b <a href="#v:-62--62-" class="selflink">#</a></p><p class="src"><a href="#v:return">return</a> :: a -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a <a href="#v:return" class="selflink">#</a></p><p class="src"><a href="#v:fail">fail</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a <a href="#v:fail" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Acquire:Functor:2" class="instance expander" onclick="toggleSection('i:id:Acquire:Functor:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Functor.html#t:Functor">Functor</a> <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a></span> <a href="src/Data-Acquire-Internal.html#line-53" class="link">Source</a> <a href="#t:Acquire" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Acquire:Functor:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fmap">fmap</a> :: (a -&gt; b) -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> b <a href="#v:fmap" class="selflink">#</a></p><p class="src"><a href="#v:-60--36-">(&lt;$)</a> :: a -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> b -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a <a href="#v:-60--36-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Acquire:Applicative:3" class="instance expander" onclick="toggleSection('i:id:Acquire:Applicative:3')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Applicative.html#t:Applicative">Applicative</a> <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a></span> <a href="src/Data-Acquire-Internal.html#line-55" class="link">Source</a> <a href="#t:Acquire" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Acquire:Applicative:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:pure">pure</a> :: a -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a <a href="#v:pure" class="selflink">#</a></p><p class="src"><a href="#v:-60--42--62-">(&lt;*&gt;)</a> :: <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> (a -&gt; b) -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> b <a href="#v:-60--42--62-" class="selflink">#</a></p><p class="src"><a href="#v:-42--62-">(*&gt;)</a> :: <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> b -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> b <a href="#v:-42--62-" class="selflink">#</a></p><p class="src"><a href="#v:-60--42-">(&lt;*)</a> :: <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> b -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a <a href="#v:-60--42-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Acquire:MonadIO:4" class="instance expander" onclick="toggleSection('i:id:Acquire:MonadIO:4')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad-IO-Class.html#t:MonadIO">MonadIO</a> <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a></span> <a href="src/Data-Acquire-Internal.html#line-67" class="link">Source</a> <a href="#t:Acquire" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Acquire:MonadIO:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:liftIO">liftIO</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> a -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a <a href="#v:liftIO" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:Acquire:MonadBase:5" class="instance expander" onclick="toggleSection('i:id:Acquire:MonadBase:5')"></span> <a href="file:///usr/share/doc/libghc-transformers-base-doc/html/Control-Monad-Base.html#t:MonadBase">MonadBase</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a></span> <a href="src/Data-Acquire-Internal.html#line-72" class="link">Source</a> <a href="#t:Acquire" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:Acquire:MonadBase:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:liftBase">liftBase</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> &#945; -&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> &#945; <a href="#v:liftBase" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Allocated" class="def">Allocated</a> a <a href="src/Data-Acquire-Internal.html#Allocated" class="link">Source</a> <a href="#t:Allocated" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Allocated" class="def">Allocated</a> !a !(<a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> ())</td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="top"><p class="src"><a id="v:with" class="def">with</a> :: <a href="Control-Monad-Trans-Resource.html#t:MonadBaseControl">MonadBaseControl</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> m =&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a -&gt; (a -&gt; m b) -&gt; m b <a href="src/Data-Acquire-Internal.html#with" class="link">Source</a> <a href="#v:with" class="selflink">#</a></p><div class="doc"><p>Allocate the given resource and provide it to the provided function. The
 resource will be freed as soon as the inner block is exited, whether
 normally or via an exception. This function is similar in function to
 <code>bracket</code>.</p><p>Since 1.1.0</p></div></div><div class="top"><p class="src"><a id="v:withEx" class="def">withEx</a> :: (<a href="file:///usr/share/doc/libghc-exceptions-doc/html/Control-Monad-Catch.html#t:MonadMask">MonadMask</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Control-Monad-IO-Class.html#t:MonadIO">MonadIO</a> m) =&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a -&gt; (a -&gt; m b) -&gt; m b <a href="src/Data-Acquire-Internal.html#withEx" class="link">Source</a> <a href="#v:withEx" class="selflink">#</a></p><div class="doc"><p>Same as <code>with</code>, but uses the <code>MonadMask</code> typeclass from exceptions instead
 of <code>MonadBaseControl</code> from exceptions.</p><p>Since 1.1.3</p></div></div><div class="top"><p class="src"><a id="v:mkAcquire" class="def">mkAcquire</a> <a href="src/Data-Acquire-Internal.html#mkAcquire" class="link">Source</a> <a href="#v:mkAcquire" class="selflink">#</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> a</td><td class="doc"><p>acquire the resource</p></td></tr><tr><td class="src">-&gt; (a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> ())</td><td class="doc"><p>free the resource</p></td></tr><tr><td class="src">-&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Create an <code>Acquire</code> value using the given allocate and free functions.</p><p>Since 1.1.0</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:ReleaseType" class="def">ReleaseType</a> <a href="src/Data-Acquire-Internal.html#ReleaseType" class="link">Source</a> <a href="#t:ReleaseType" class="selflink">#</a></p><div class="doc"><p>The way in which a release is called.</p><p>Since 1.1.2</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:ReleaseEarly" class="def">ReleaseEarly</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:ReleaseNormal" class="def">ReleaseNormal</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:ReleaseException" class="def">ReleaseException</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:ReleaseType" class="caption collapser" onclick="toggleSection('i:ReleaseType')">Instances</p><div id="section.i:ReleaseType" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:ReleaseType:Bounded:1" class="instance expander" onclick="toggleSection('i:id:ReleaseType:Bounded:1')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Bounded">Bounded</a> <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a></span> <a href="src/Data-Acquire-Internal.html#line-34" class="link">Source</a> <a href="#t:ReleaseType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:ReleaseType:Bounded:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:minBound">minBound</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> <a href="#v:minBound" class="selflink">#</a></p><p class="src"><a href="#v:maxBound">maxBound</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> <a href="#v:maxBound" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:ReleaseType:Enum:2" class="instance expander" onclick="toggleSection('i:id:ReleaseType:Enum:2')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Prelude.html#t:Enum">Enum</a> <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a></span> <a href="src/Data-Acquire-Internal.html#line-34" class="link">Source</a> <a href="#t:ReleaseType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:ReleaseType:Enum:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:succ">succ</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> <a href="#v:succ" class="selflink">#</a></p><p class="src"><a href="#v:pred">pred</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> <a href="#v:pred" class="selflink">#</a></p><p class="src"><a href="#v:toEnum">toEnum</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> <a href="#v:toEnum" class="selflink">#</a></p><p class="src"><a href="#v:fromEnum">fromEnum</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:fromEnum" class="selflink">#</a></p><p class="src"><a href="#v:enumFrom">enumFrom</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; [<a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a>] <a href="#v:enumFrom" class="selflink">#</a></p><p class="src"><a href="#v:enumFromThen">enumFromThen</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; [<a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a>] <a href="#v:enumFromThen" class="selflink">#</a></p><p class="src"><a href="#v:enumFromTo">enumFromTo</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; [<a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a>] <a href="#v:enumFromTo" class="selflink">#</a></p><p class="src"><a href="#v:enumFromThenTo">enumFromThenTo</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; [<a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a>] <a href="#v:enumFromThenTo" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:ReleaseType:Eq:3" class="instance expander" onclick="toggleSection('i:id:ReleaseType:Eq:3')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a></span> <a href="src/Data-Acquire-Internal.html#line-34" class="link">Source</a> <a href="#t:ReleaseType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:ReleaseType:Eq:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:ReleaseType:Ord:4" class="instance expander" onclick="toggleSection('i:id:ReleaseType:Ord:4')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ord">Ord</a> <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a></span> <a href="src/Data-Acquire-Internal.html#line-34" class="link">Source</a> <a href="#t:ReleaseType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:ReleaseType:Ord:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:compare">compare</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Ord.html#t:Ordering">Ordering</a> <a href="#v:compare" class="selflink">#</a></p><p class="src"><a href="#v:-60-">(&lt;)</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-60-" class="selflink">#</a></p><p class="src"><a href="#v:-60--61-">(&lt;=)</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-60--61-" class="selflink">#</a></p><p class="src"><a href="#v:-62-">(&gt;)</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-62-" class="selflink">#</a></p><p class="src"><a href="#v:-62--61-">(&gt;=)</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="#v:-62--61-" class="selflink">#</a></p><p class="src"><a href="#v:max">max</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> <a href="#v:max" class="selflink">#</a></p><p class="src"><a href="#v:min">min</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> <a href="#v:min" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:ReleaseType:Read:5" class="instance expander" onclick="toggleSection('i:id:ReleaseType:Read:5')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Read.html#t:Read">Read</a> <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a></span> <a href="src/Data-Acquire-Internal.html#line-34" class="link">Source</a> <a href="#t:ReleaseType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:ReleaseType:Read:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:readsPrec">readsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadP.html#t:ReadS">ReadS</a> <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> <a href="#v:readsPrec" class="selflink">#</a></p><p class="src"><a href="#v:readList">readList</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadP.html#t:ReadS">ReadS</a> [<a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a>] <a href="#v:readList" class="selflink">#</a></p><p class="src"><a href="#v:readPrec">readPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> <a href="#v:readPrec" class="selflink">#</a></p><p class="src"><a href="#v:readListPrec">readListPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-ParserCombinators-ReadPrec.html#t:ReadPrec">ReadPrec</a> [<a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a>] <a href="#v:readListPrec" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:ReleaseType:Show:6" class="instance expander" onclick="toggleSection('i:id:ReleaseType:Show:6')"></span> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a></span> <a href="src/Data-Acquire-Internal.html#line-34" class="link">Source</a> <a href="#t:ReleaseType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div id="section.i:id:ReleaseType:Show:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a>] -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><a id="v:mkAcquireType" class="def">mkAcquireType</a> <a href="src/Data-Acquire-Internal.html#mkAcquireType" class="link">Source</a> <a href="#v:mkAcquireType" class="selflink">#</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> a</td><td class="doc"><p>acquire the resource</p></td></tr><tr><td class="src">-&gt; (a -&gt; <a href="Data-Acquire-Internal.html#t:ReleaseType">ReleaseType</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> ())</td><td class="doc"><p>free the resource</p></td></tr><tr><td class="src">-&gt; <a href="Data-Acquire-Internal.html#t:Acquire">Acquire</a> a</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Same as <code><a href="Data-Acquire-Internal.html#v:mkAcquire">mkAcquire</a></code>, but the cleanup function will be informed of <em>how</em>
 cleanup was initiated. This allows you to distinguish, for example, between
 normal and exceptional exits.</p><p>Since 1.1.2</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.3</p></div></body></html>