Sophie

Sophie

distrib > Fedora > 18 > i386 > by-pkgid > db7a4a658d190b3e658423135710c498 > files > 741

ghc-darcs-devel-2.8.3-1.fc18.i686.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>Workaround</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_Workaround.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Workaround.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">darcs-2.8.3: a distributed, interactive, smart revision control system</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Portability</th><td>portable</td></tr><tr><th>Stability</th><td>experimental</td></tr><tr><th>Maintainer</th><td>darcs-devel@darcs.net</td></tr><tr><th>Safe Haskell</th><td>Safe-Infered</td></tr></table><p class="caption">Workaround</p></div><div id="description"><p class="caption">Description</p><div class="doc empty">&nbsp;</div></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:renameFile">renameFile</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> ()</li><li class="src short"><a href="#v:setExecutable">setExecutable</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Tuple.html#t:-40--41-">()</a></li><li class="src short"><a href="#v:getCurrentDirectory">getCurrentDirectory</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:FilePath">FilePath</a></li><li class="src short"><a href="#v:installHandler">installHandler</a> :: <a href="Workaround.html#t:Signal">Signal</a> -&gt; <a href="Workaround.html#t:Handler">Handler</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="/usr/share/doc/ghc/html/libraries/unix-2.5.1.0/System-Posix-Signals.html#t:SignalSet">SignalSet</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> <a href="Workaround.html#t:Handler">Handler</a></li><li class="src short"><a href="#v:raiseSignal">raiseSignal</a> :: <a href="Workaround.html#t:Signal">Signal</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> ()</li><li class="src short"><span class="keyword">data</span>  <a href="#t:Handler">Handler</a> <ul class="subs"><li>= <a href="#v:Default">Default</a>  </li><li>| <a href="#v:Ignore">Ignore</a>  </li><li>| <a href="#v:Catch">Catch</a> (<a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> ())  </li><li>| <a href="#v:CatchOnce">CatchOnce</a> (<a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> ())  </li></ul></li><li class="src short"><span class="keyword">type</span> <a href="#t:Signal">Signal</a> = <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></li><li class="src short"><a href="#v:sigINT">sigINT</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></li><li class="src short"><a href="#v:sigHUP">sigHUP</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></li><li class="src short"><a href="#v:sigABRT">sigABRT</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></li><li class="src short"><a href="#v:sigALRM">sigALRM</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></li><li class="src short"><a href="#v:sigTERM">sigTERM</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></li><li class="src short"><a href="#v:sigPIPE">sigPIPE</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:renameFile" class="def">renameFile</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> ()</p><div class="doc"><p><code><code><a href="Workaround.html#v:renameFile">renameFile</a></code> old new</code> changes the name of an existing file system
object from <em>old</em> to <em>new</em>.  If the <em>new</em> object already
exists, it is atomically replaced by the <em>old</em> object.  Neither
path may refer to an existing directory.  A conformant implementation
need not support renaming files in all situations (e.g. renaming
across different physical devices), but the constraints must be
documented.
</p><p>The operation may fail with:
</p><ul><li> <code>HardwareFault</code>
A physical I/O error has occurred.
<code>[EIO]</code>
</li><li> <code>InvalidArgument</code>
Either operand is not a valid file name.
<code>[ENAMETOOLONG, ELOOP]</code>
</li><li> <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO-Error.html#v:isDoesNotExistError">isDoesNotExistError</a></code> / <code>NoSuchThing</code>
The original file does not exist, or there is no path to the target.
<code>[ENOENT, ENOTDIR]</code>
</li><li> <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO-Error.html#v:isPermissionError">isPermissionError</a></code> / <code>PermissionDenied</code>
The process has insufficient privileges to perform the operation.
<code>[EROFS, EACCES, EPERM]</code>
</li><li> <code>ResourceExhausted</code>
Insufficient resources are available to perform the operation.  
<code>[EDQUOT, ENOSPC, ENOMEM, EMLINK]</code>
</li><li> <code>UnsatisfiedConstraints</code>
Implementation-dependent constraints are not satisfied.
<code>[EBUSY]</code>
</li><li> <code>UnsupportedOperation</code>
The implementation does not support renaming in this situation.
<code>[EXDEV]</code>
</li><li> <code>InappropriateType</code>
Either path refers to an existing directory.
<code>[ENOTDIR, EISDIR, EINVAL, EEXIST, ENOTEMPTY]</code>
</li></ul></div></div><div class="top"><p class="src"><a name="v:setExecutable" class="def">setExecutable</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Tuple.html#t:-40--41-">()</a><a href="src/Workaround.html#setExecutable" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:getCurrentDirectory" class="def">getCurrentDirectory</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:FilePath">FilePath</a></p><div class="doc"><p>If the operating system has a notion of current directories,
<code><a href="Workaround.html#v:getCurrentDirectory">getCurrentDirectory</a></code> returns an absolute path to the
current directory of the calling process.
</p><p>The operation may fail with:
</p><ul><li> <code>HardwareFault</code>
A physical I/O error has occurred.
<code>[EIO]</code>
</li><li> <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO-Error.html#v:isDoesNotExistError">isDoesNotExistError</a></code> / <code>NoSuchThing</code>
There is no path referring to the current directory.
<code>[EPERM, ENOENT, ESTALE...]</code>
</li><li> <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO-Error.html#v:isPermissionError">isPermissionError</a></code> / <code>PermissionDenied</code>
The process has insufficient privileges to perform the operation.
<code>[EACCES]</code>
</li><li> <code>ResourceExhausted</code>
Insufficient resources are available to perform the operation.
</li><li> <code>UnsupportedOperation</code>
The operating system has no notion of current directory.
</li></ul><p>Note that in a concurrent program, the current directory is global
state shared between all threads of the process.  When using
filesystem operations from multiple threads, it is therefore highly
recommended to use absolute rather than relative <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:FilePath">FilePath</a></code>s.
</p></div></div><div class="top"><p class="src"><a name="v:installHandler" class="def">installHandler</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: <a href="Workaround.html#t:Signal">Signal</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="Workaround.html#t:Handler">Handler</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="/usr/share/doc/ghc/html/libraries/unix-2.5.1.0/System-Posix-Signals.html#t:SignalSet">SignalSet</a></td><td class="doc"><p>other signals to block
</p></td></tr><tr><td class="src">-&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> <a href="Workaround.html#t:Handler">Handler</a></td><td class="doc"><p>old handler
</p></td></tr></table></div><div class="doc"><p><code>installHandler int handler iset</code> calls <code>sigaction</code> to install an
   interrupt handler for signal <code>int</code>.  If <code>handler</code> is <code>Default</code>,
   <code>SIG_DFL</code> is installed; if <code>handler</code> is <code>Ignore</code>, <code>SIG_IGN</code> is
   installed; if <code>handler</code> is <code>Catch action</code>, a handler is installed
   which will invoke <code>action</code> in a new thread when (or shortly after) the
   signal is received.
   If <code>iset</code> is <code>Just s</code>, then the <code>sa_mask</code> of the <code>sigaction</code> structure
   is set to <code>s</code>; otherwise it is cleared.  The previously installed
   signal handler for <code>int</code> is returned
</p></div></div><div class="top"><p class="src"><a name="v:raiseSignal" class="def">raiseSignal</a> :: <a href="Workaround.html#t:Signal">Signal</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> ()</p><div class="doc"><p><code>raiseSignal int</code> calls <code>kill</code> to signal the current process
   with interrupt signal <code>int</code>. 
</p></div></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:Handler" class="def">Handler</a>  </p><div class="doc"><p>The actions to perform when a signal is received.
</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:Default" class="def">Default</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:Ignore" class="def">Ignore</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:Catch" class="def">Catch</a> (<a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> ())</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:CatchOnce" class="def">CatchOnce</a> (<a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/System-IO.html#t:IO">IO</a> ())</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><p id="control.i:Handler" class="caption collapser" onclick="toggleSection('i:Handler')">Instances</p><div id="section.i:Handler" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Typeable-Internal.html#t:Typeable">Typeable</a> <a href="Workaround.html#t:Handler">Handler</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:Signal" class="def">Signal</a> = <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></p></div><div class="top"><p class="src"><a name="v:sigINT" class="def">sigINT</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></p></div><div class="top"><p class="src"><a name="v:sigHUP" class="def">sigHUP</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></p></div><div class="top"><p class="src"><a name="v:sigABRT" class="def">sigABRT</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></p></div><div class="top"><p class="src"><a name="v:sigALRM" class="def">sigALRM</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></p></div><div class="top"><p class="src"><a name="v:sigTERM" class="def">sigTERM</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></p></div><div class="top"><p class="src"><a name="v:sigPIPE" class="def">sigPIPE</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Foreign-C-Types.html#t:CInt">CInt</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.10.0</p></div></body></html>