Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 77f0c8b2568c8ba86bf4498d38e7ecdc > files > 801

ghc-base-devel-4.2.0.2-8.6.fc14.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--Rendered using the Haskell Html Library v0.2-->
<HTML
><HEAD
><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"
><TITLE
>GHC.IO.Device</TITLE
><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"
><SCRIPT SRC="haddock-util.js" TYPE="text/javascript"
></SCRIPT
><SCRIPT TYPE="text/javascript"
>window.onload = function () {setSynopsis("mini_GHC-IO-Device.html")};</SCRIPT
></HEAD
><BODY
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="topbar"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD
><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "
></TD
><TD CLASS="title"
>base-4.2.0.2: Basic libraries</TD
><TD CLASS="topbut"
><A HREF="index.html"
>Contents</A
></TD
><TD CLASS="topbut"
><A HREF="doc-index.html"
>Index</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="modulebar"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD
><FONT SIZE="6"
>GHC.IO.Device</FONT
></TD
><TD ALIGN="right"
><TABLE CLASS="narrow" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="infohead"
>Portability</TD
><TD CLASS="infoval"
>non-portable</TD
></TR
><TR
><TD CLASS="infohead"
>Stability</TD
><TD CLASS="infoval"
>internal</TD
></TR
><TR
><TD CLASS="infohead"
>Maintainer</TD
><TD CLASS="infoval"
>libraries@haskell.org</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
>Description</TD
></TR
><TR
><TD CLASS="doc"
>Type classes for I/O providers.
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
>Synopsis</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
>  <A HREF="#t%3ARawIO"
>RawIO</A
> a  <SPAN CLASS="keyword"
>where</SPAN
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="#v%3Aread"
>read</A
> :: a -&gt; <A HREF="Foreign-Ptr.html#t%3APtr"
>Ptr</A
> <A HREF="Data-Word.html#t%3AWord8"
>Word8</A
> -&gt; <A HREF="Data-Int.html#t%3AInt"
>Int</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Int.html#t%3AInt"
>Int</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AreadNonBlocking"
>readNonBlocking</A
> :: a -&gt; <A HREF="Foreign-Ptr.html#t%3APtr"
>Ptr</A
> <A HREF="Data-Word.html#t%3AWord8"
>Word8</A
> -&gt; <A HREF="Data-Int.html#t%3AInt"
>Int</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> (<A HREF="Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Data-Int.html#t%3AInt"
>Int</A
>)</TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Awrite"
>write</A
> :: a -&gt; <A HREF="Foreign-Ptr.html#t%3APtr"
>Ptr</A
> <A HREF="Data-Word.html#t%3AWord8"
>Word8</A
> -&gt; <A HREF="Data-Int.html#t%3AInt"
>Int</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AwriteNonBlocking"
>writeNonBlocking</A
> :: a -&gt; <A HREF="Foreign-Ptr.html#t%3APtr"
>Ptr</A
> <A HREF="Data-Word.html#t%3AWord8"
>Word8</A
> -&gt; <A HREF="Data-Int.html#t%3AInt"
>Int</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Int.html#t%3AInt"
>Int</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
>  <A HREF="#t%3AIODevice"
>IODevice</A
> a  <SPAN CLASS="keyword"
>where</SPAN
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="#v%3Aready"
>ready</A
> :: a -&gt; <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
> -&gt; <A HREF="Data-Int.html#t%3AInt"
>Int</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Aclose"
>close</A
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AisTerminal"
>isTerminal</A
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AisSeekable"
>isSeekable</A
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Aseek"
>seek</A
> :: a -&gt; <A HREF="GHC-IO-Device.html#t%3ASeekMode"
>SeekMode</A
> -&gt; <A HREF="Prelude.html#t%3AInteger"
>Integer</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Atell"
>tell</A
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Prelude.html#t%3AInteger"
>Integer</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AgetSize"
>getSize</A
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Prelude.html#t%3AInteger"
>Integer</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AsetSize"
>setSize</A
> :: a -&gt; <A HREF="Prelude.html#t%3AInteger"
>Integer</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AsetEcho"
>setEcho</A
> :: a -&gt; <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AgetEcho"
>getEcho</A
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AsetRaw"
>setRaw</A
> :: a -&gt; <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AdevType"
>devType</A
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="GHC-IO-Device.html#t%3AIODeviceType"
>IODeviceType</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Adup"
>dup</A
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> a</TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Adup2"
>dup2</A
> :: a -&gt; a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> a</TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AIODeviceType"
>IODeviceType</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3ADirectory"
>Directory</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AStream"
>Stream</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ARegularFile"
>RegularFile</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ARawDevice"
>RawDevice</A
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3ASeekMode"
>SeekMode</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3AAbsoluteSeek"
>AbsoluteSeek</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ARelativeSeek"
>RelativeSeek</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ASeekFromEnd"
>SeekFromEnd</A
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
>Documentation</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
>  <A NAME="t:RawIO"
><A NAME="t%3ARawIO"
></A
></A
><B
>RawIO</B
> a  <SPAN CLASS="keyword"
>where</SPAN
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>A low-level I/O provider where the data is bytes in memory.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
>Methods</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A NAME="v:read"
><A NAME="v%3Aread"
></A
></A
><B
>read</B
> :: a -&gt; <A HREF="Foreign-Ptr.html#t%3APtr"
>Ptr</A
> <A HREF="Data-Word.html#t%3AWord8"
>Word8</A
> -&gt; <A HREF="Data-Int.html#t%3AInt"
>Int</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Int.html#t%3AInt"
>Int</A
></TD
></TR
><TR
><TD CLASS="doc"
>Read up to the specified number of bytes, returning the number
 of bytes actually read.  This function should only block if there
 is no data available.  If there is not enough data available,
 then the function should just return the available data. A return
 value of zero indicates that the end of the data stream (e.g. end
 of file) has been reached.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:readNonBlocking"
><A NAME="v%3AreadNonBlocking"
></A
></A
><B
>readNonBlocking</B
> :: a -&gt; <A HREF="Foreign-Ptr.html#t%3APtr"
>Ptr</A
> <A HREF="Data-Word.html#t%3AWord8"
>Word8</A
> -&gt; <A HREF="Data-Int.html#t%3AInt"
>Int</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> (<A HREF="Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Data-Int.html#t%3AInt"
>Int</A
>)</TD
></TR
><TR
><TD CLASS="doc"
>Read up to the specified number of bytes, returning the number
 of bytes actually read, or <TT
><A HREF="Data-Maybe.html#v%3ANothing"
>Nothing</A
></TT
> if the end of the stream has
 been reached.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:write"
><A NAME="v%3Awrite"
></A
></A
><B
>write</B
> :: a -&gt; <A HREF="Foreign-Ptr.html#t%3APtr"
>Ptr</A
> <A HREF="Data-Word.html#t%3AWord8"
>Word8</A
> -&gt; <A HREF="Data-Int.html#t%3AInt"
>Int</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>Write the specified number of bytes.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:writeNonBlocking"
><A NAME="v%3AwriteNonBlocking"
></A
></A
><B
>writeNonBlocking</B
> :: a -&gt; <A HREF="Foreign-Ptr.html#t%3APtr"
>Ptr</A
> <A HREF="Data-Word.html#t%3AWord8"
>Word8</A
> -&gt; <A HREF="Data-Int.html#t%3AInt"
>Int</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Int.html#t%3AInt"
>Int</A
></TD
></TR
><TR
><TD CLASS="doc"
>Write up to the specified number of bytes without blocking.  Returns
 the actual number of bytes written.
</TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:RawIO')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:RawIO" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="GHC-IO-Device.html#t%3ARawIO"
>RawIO</A
> FD</TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
>  <A NAME="t:IODevice"
><A NAME="t%3AIODevice"
></A
></A
><B
>IODevice</B
> a  <SPAN CLASS="keyword"
>where</SPAN
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>I/O operations required for implementing a Handle.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
>Methods</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A NAME="v:ready"
><A NAME="v%3Aready"
></A
></A
><B
>ready</B
> :: a -&gt; <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
> -&gt; <A HREF="Data-Int.html#t%3AInt"
>Int</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="doc"
><TT
>ready dev write msecs</TT
> returns <TT
><A HREF="Data-Bool.html#v%3ATrue"
>True</A
></TT
> if the device has data
 to read (if <TT
>write</TT
> is <TT
><A HREF="Data-Bool.html#v%3AFalse"
>False</A
></TT
>) or space to write new data (if
 <TT
>write</TT
> is <TT
><A HREF="Data-Bool.html#v%3ATrue"
>True</A
></TT
>).  <TT
>msecs</TT
> specifies how long to wait, in
 milliseconds.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:close"
><A NAME="v%3Aclose"
></A
></A
><B
>close</B
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>closes the device.  Further operations on the device should
 produce exceptions.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:isTerminal"
><A NAME="v%3AisTerminal"
></A
></A
><B
>isTerminal</B
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="doc"
>returns <TT
><A HREF="Data-Bool.html#v%3ATrue"
>True</A
></TT
> if the device is a terminal or console.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:isSeekable"
><A NAME="v%3AisSeekable"
></A
></A
><B
>isSeekable</B
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="doc"
>returns <TT
><A HREF="Data-Bool.html#v%3ATrue"
>True</A
></TT
> if the device supports <TT
><A HREF="GHC-IO-Device.html#v%3Aseek"
>seek</A
></TT
> operations.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:seek"
><A NAME="v%3Aseek"
></A
></A
><B
>seek</B
> :: a -&gt; <A HREF="GHC-IO-Device.html#t%3ASeekMode"
>SeekMode</A
> -&gt; <A HREF="Prelude.html#t%3AInteger"
>Integer</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>seek to the specified position in the data.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:tell"
><A NAME="v%3Atell"
></A
></A
><B
>tell</B
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Prelude.html#t%3AInteger"
>Integer</A
></TD
></TR
><TR
><TD CLASS="doc"
>return the current position in the data.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:getSize"
><A NAME="v%3AgetSize"
></A
></A
><B
>getSize</B
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Prelude.html#t%3AInteger"
>Integer</A
></TD
></TR
><TR
><TD CLASS="doc"
>return the size of the data.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:setSize"
><A NAME="v%3AsetSize"
></A
></A
><B
>setSize</B
> :: a -&gt; <A HREF="Prelude.html#t%3AInteger"
>Integer</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>change the size of the data.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:setEcho"
><A NAME="v%3AsetEcho"
></A
></A
><B
>setEcho</B
> :: a -&gt; <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>for terminal devices, changes whether characters are echoed on
 the device.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:getEcho"
><A NAME="v%3AgetEcho"
></A
></A
><B
>getEcho</B
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="doc"
>returns the current echoing status.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:setRaw"
><A NAME="v%3AsetRaw"
></A
></A
><B
>setRaw</B
> :: a -&gt; <A HREF="Data-Bool.html#t%3ABool"
>Bool</A
> -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="doc"
>some devices (e.g. terminals) support a <A HREF="raw.html"
>raw</A
> mode where
 characters entered are immediately made available to the program.
 If available, this operations enables raw mode.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:devType"
><A NAME="v%3AdevType"
></A
></A
><B
>devType</B
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> <A HREF="GHC-IO-Device.html#t%3AIODeviceType"
>IODeviceType</A
></TD
></TR
><TR
><TD CLASS="doc"
>returns the <TT
><A HREF="GHC-IO-Device.html#t%3AIODeviceType"
>IODeviceType</A
></TT
> corresponding to this device.
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:dup"
><A NAME="v%3Adup"
></A
></A
><B
>dup</B
> :: a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> a</TD
></TR
><TR
><TD CLASS="doc"
>duplicates the device, if possible.  The new device is expected
 to share a file pointer with the original device (like Unix <TT
>dup</TT
>).
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:dup2"
><A NAME="v%3Adup2"
></A
></A
><B
>dup2</B
> :: a -&gt; a -&gt; <A HREF="System-IO.html#t%3AIO"
>IO</A
> a</TD
></TR
><TR
><TD CLASS="doc"
><TT
>dup2 source target</TT
> replaces the target device with the source
 device.  The target device is closed first, if necessary, and then
 it is made into a duplicate of the first device (like Unix <TT
>dup2</TT
>).
</TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:IODevice')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:IODevice" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="GHC-IO-Device.html#t%3AIODevice"
>IODevice</A
> FD</TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:IODeviceType"
><A NAME="t%3AIODeviceType"
></A
></A
><B
>IODeviceType</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:Directory"
><A NAME="v%3ADirectory"
></A
></A
><B
>Directory</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:Stream"
><A NAME="v%3AStream"
></A
></A
><B
>Stream</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:RegularFile"
><A NAME="v%3ARegularFile"
></A
></A
><B
>RegularFile</B
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:RawDevice"
><A NAME="v%3ARawDevice"
></A
></A
><B
>RawDevice</B
></TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:IODeviceType')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:IODeviceType" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Data-Eq.html#t%3AEq"
>Eq</A
> <A HREF="GHC-IO-Device.html#t%3AIODeviceType"
>IODeviceType</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:SeekMode"
><A NAME="t%3ASeekMode"
></A
></A
><B
>SeekMode</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>A mode that determines the effect of hSeek <TT
>hdl mode i</TT
>, as follows:
</TD
></TR
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:AbsoluteSeek"
><A NAME="v%3AAbsoluteSeek"
></A
></A
><B
>AbsoluteSeek</B
></TD
><TD CLASS="rdoc"
>the position of <TT
>hdl</TT
> is set to <TT
>i</TT
>.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:RelativeSeek"
><A NAME="v%3ARelativeSeek"
></A
></A
><B
>RelativeSeek</B
></TD
><TD CLASS="rdoc"
>the position of <TT
>hdl</TT
> is set to offset <TT
>i</TT
>
 from the current position.
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:SeekFromEnd"
><A NAME="v%3ASeekFromEnd"
></A
></A
><B
>SeekFromEnd</B
></TD
><TD CLASS="rdoc"
>the position of <TT
>hdl</TT
> is set to offset <TT
>i</TT
>
 from the end of the file.
</TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:SeekMode')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:SeekMode" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Prelude.html#t%3AEnum"
>Enum</A
> <A HREF="GHC-IO-Device.html#t%3ASeekMode"
>SeekMode</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-Eq.html#t%3AEq"
>Eq</A
> <A HREF="GHC-IO-Device.html#t%3ASeekMode"
>SeekMode</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-Ord.html#t%3AOrd"
>Ord</A
> <A HREF="GHC-IO-Device.html#t%3ASeekMode"
>SeekMode</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Text-Read.html#t%3ARead"
>Read</A
> <A HREF="GHC-IO-Device.html#t%3ASeekMode"
>SeekMode</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Text-Show.html#t%3AShow"
>Show</A
> <A HREF="GHC-IO-Device.html#t%3ASeekMode"
>SeekMode</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-Ix.html#t%3AIx"
>Ix</A
> <A HREF="GHC-IO-Device.html#t%3ASeekMode"
>SeekMode</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="botbar"
>Produced by <A HREF="http://www.haskell.org/haddock/"
>Haddock</A
> version 2.6.1</TD
></TR
></TABLE
></BODY
></HTML
>