Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 1f2b142b9d2ef4849a6f5316fa1c5b12 > files > 1882

ghc-6.10.4-1mdv2010.0.i586.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
>DriverPipeline</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_DriverPipeline.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"
>ghc-6.10.4: The GHC API</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"
>DriverPipeline</FONT
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></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"
><A HREF="#v%3AoneShot"
>oneShot</A
> :: <A HREF="HscTypes.html#t%3AGhcMonad"
>GhcMonad</A
> m =&gt; <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
> -&gt; <A HREF="DriverPhases.html#t%3APhase"
>Phase</A
> -&gt; [(<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>, <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="DriverPhases.html#t%3APhase"
>Phase</A
>)] -&gt; m <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AcompileFile"
>compileFile</A
> :: <A HREF="HscTypes.html#t%3AGhcMonad"
>GhcMonad</A
> m =&gt; <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
> -&gt; <A HREF="DriverPhases.html#t%3APhase"
>Phase</A
> -&gt; (<A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
>, <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="DriverPhases.html#t%3APhase"
>Phase</A
>) -&gt; m <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AlinkBinary"
>linkBinary</A
> :: <A HREF="DynFlags.html#t%3ADynFlags"
>DynFlags</A
> -&gt; [<A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
>] -&gt; [<A HREF="Module.html#t%3APackageId"
>PackageId</A
>] -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Apreprocess"
>preprocess</A
> :: <A HREF="HscTypes.html#t%3AGhcMonad"
>GhcMonad</A
> m =&gt; <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
> -&gt; (<A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
>, <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="DriverPhases.html#t%3APhase"
>Phase</A
>) -&gt; m (<A HREF="DynFlags.html#t%3ADynFlags"
>DynFlags</A
>, <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
>)</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Acompile"
>compile</A
> :: <A HREF="HscTypes.html#t%3AGhcMonad"
>GhcMonad</A
> m =&gt; <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
> -&gt; <A HREF="HscTypes.html#t%3AModSummary"
>ModSummary</A
> -&gt; <A HREF="../ghc-prim/GHC-Types.html#t%3AInt"
>Int</A
> -&gt; <A HREF="../ghc-prim/GHC-Types.html#t%3AInt"
>Int</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="HscTypes.html#t%3AModIface"
>ModIface</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="HscTypes.html#t%3ALinkable"
>Linkable</A
> -&gt; m <A HREF="HscTypes.html#t%3AHomeModInfo"
>HomeModInfo</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Acompile%27"
>compile'</A
> :: <A HREF="HscTypes.html#t%3AGhcMonad"
>GhcMonad</A
> m =&gt; (<A HREF="HscMain.html#t%3ACompiler%27"
>Compiler'</A
> m (<A HREF="HscMain.html#t%3AHscStatus"
>HscStatus</A
>, <A HREF="HscTypes.html#t%3AModIface"
>ModIface</A
>, <A HREF="HscTypes.html#t%3AModDetails"
>ModDetails</A
>), <A HREF="HscMain.html#t%3ACompiler%27"
>Compiler'</A
> m (<A HREF="HscMain.html#t%3AInteractiveStatus"
>InteractiveStatus</A
>, <A HREF="HscTypes.html#t%3AModIface"
>ModIface</A
>, <A HREF="HscTypes.html#t%3AModDetails"
>ModDetails</A
>), <A HREF="HscMain.html#t%3ACompiler%27"
>Compiler'</A
> m (<A HREF="HscMain.html#t%3AHscStatus"
>HscStatus</A
>, <A HREF="HscTypes.html#t%3AModIface"
>ModIface</A
>, <A HREF="HscTypes.html#t%3AModDetails"
>ModDetails</A
>)) -&gt; <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
> -&gt; <A HREF="HscTypes.html#t%3AModSummary"
>ModSummary</A
> -&gt; <A HREF="../ghc-prim/GHC-Types.html#t%3AInt"
>Int</A
> -&gt; <A HREF="../ghc-prim/GHC-Types.html#t%3AInt"
>Int</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="HscTypes.html#t%3AModIface"
>ModIface</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="HscTypes.html#t%3ALinkable"
>Linkable</A
> -&gt; m <A HREF="HscTypes.html#t%3AHomeModInfo"
>HomeModInfo</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Alink"
>link</A
> :: <A HREF="DynFlags.html#t%3AGhcLink"
>GhcLink</A
> -&gt; <A HREF="DynFlags.html#t%3ADynFlags"
>DynFlags</A
> -&gt; <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool"
>Bool</A
> -&gt; <A HREF="HscTypes.html#t%3AHomePackageTable"
>HomePackageTable</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="BasicTypes.html#t%3ASuccessFlag"
>SuccessFlag</A
></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"
><A NAME="v:oneShot"
><A NAME="v%3AoneShot"
></A
></A
><B
>oneShot</B
> :: <A HREF="HscTypes.html#t%3AGhcMonad"
>GhcMonad</A
> m =&gt; <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
> -&gt; <A HREF="DriverPhases.html#t%3APhase"
>Phase</A
> -&gt; [(<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>, <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="DriverPhases.html#t%3APhase"
>Phase</A
>)] -&gt; m <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:compileFile"
><A NAME="v%3AcompileFile"
></A
></A
><B
>compileFile</B
> :: <A HREF="HscTypes.html#t%3AGhcMonad"
>GhcMonad</A
> m =&gt; <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
> -&gt; <A HREF="DriverPhases.html#t%3APhase"
>Phase</A
> -&gt; (<A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
>, <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="DriverPhases.html#t%3APhase"
>Phase</A
>) -&gt; m <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:linkBinary"
><A NAME="v%3AlinkBinary"
></A
></A
><B
>linkBinary</B
> :: <A HREF="DynFlags.html#t%3ADynFlags"
>DynFlags</A
> -&gt; [<A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
>] -&gt; [<A HREF="Module.html#t%3APackageId"
>PackageId</A
>] -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:preprocess"
><A NAME="v%3Apreprocess"
></A
></A
><B
>preprocess</B
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="arg"
>:: <A HREF="HscTypes.html#t%3AGhcMonad"
>GhcMonad</A
> m</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>=&gt; <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>-&gt; (<A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
>, <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="DriverPhases.html#t%3APhase"
>Phase</A
>)</TD
><TD CLASS="rdoc"
>filename and starting phase
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; m (<A HREF="DynFlags.html#t%3ADynFlags"
>DynFlags</A
>, <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="ndoc" COLSPAN="2"
><P
>Just preprocess a file, put the result in a temp. file (used by the
 compilation manager during the summary phase).
</P
><P
>We return the augmented DynFlags, because they contain the result
 of slurping in the OPTIONS pragmas
</P
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:compile"
><A NAME="v%3Acompile"
></A
></A
><B
>compile</B
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="arg"
>:: <A HREF="HscTypes.html#t%3AGhcMonad"
>GhcMonad</A
> m</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>=&gt; <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="HscTypes.html#t%3AModSummary"
>ModSummary</A
></TD
><TD CLASS="rdoc"
>summary for module being compiled
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="../ghc-prim/GHC-Types.html#t%3AInt"
>Int</A
></TD
><TD CLASS="rdoc"
>module N ...
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="../ghc-prim/GHC-Types.html#t%3AInt"
>Int</A
></TD
><TD CLASS="rdoc"
>... of M
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="HscTypes.html#t%3AModIface"
>ModIface</A
></TD
><TD CLASS="rdoc"
>old interface, if we have one
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="HscTypes.html#t%3ALinkable"
>Linkable</A
></TD
><TD CLASS="rdoc"
>old linkable, if we have one
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; m <A HREF="HscTypes.html#t%3AHomeModInfo"
>HomeModInfo</A
></TD
><TD CLASS="rdoc"
>the complete HomeModInfo, if successful
</TD
></TR
><TR
><TD CLASS="ndoc" COLSPAN="2"
><P
>Compile
</P
><P
>Compile a single module, under the control of the compilation manager.
</P
><P
>This is the interface between the compilation manager and the
 compiler proper (hsc), where we deal with tedious details like
 reading the OPTIONS pragma from the source file, and passing the
 output of hsc through the C compiler.
</P
><P
>NB.  No old interface can also mean that the source has changed.
</P
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:compile'"
><A NAME="v%3Acompile%27"
></A
></A
><B
>compile'</B
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="arg"
>:: <A HREF="HscTypes.html#t%3AGhcMonad"
>GhcMonad</A
> m</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>=&gt; (<A HREF="HscMain.html#t%3ACompiler%27"
>Compiler'</A
> m (<A HREF="HscMain.html#t%3AHscStatus"
>HscStatus</A
>, <A HREF="HscTypes.html#t%3AModIface"
>ModIface</A
>, <A HREF="HscTypes.html#t%3AModDetails"
>ModDetails</A
>), <A HREF="HscMain.html#t%3ACompiler%27"
>Compiler'</A
> m (<A HREF="HscMain.html#t%3AInteractiveStatus"
>InteractiveStatus</A
>, <A HREF="HscTypes.html#t%3AModIface"
>ModIface</A
>, <A HREF="HscTypes.html#t%3AModDetails"
>ModDetails</A
>), <A HREF="HscMain.html#t%3ACompiler%27"
>Compiler'</A
> m (<A HREF="HscMain.html#t%3AHscStatus"
>HscStatus</A
>, <A HREF="HscTypes.html#t%3AModIface"
>ModIface</A
>, <A HREF="HscTypes.html#t%3AModDetails"
>ModDetails</A
>))</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="HscTypes.html#t%3AHscEnv"
>HscEnv</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="HscTypes.html#t%3AModSummary"
>ModSummary</A
></TD
><TD CLASS="rdoc"
>summary for module being compiled
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="../ghc-prim/GHC-Types.html#t%3AInt"
>Int</A
></TD
><TD CLASS="rdoc"
>module N ...
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="../ghc-prim/GHC-Types.html#t%3AInt"
>Int</A
></TD
><TD CLASS="rdoc"
>... of M
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="HscTypes.html#t%3AModIface"
>ModIface</A
></TD
><TD CLASS="rdoc"
>old interface, if we have one
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="HscTypes.html#t%3ALinkable"
>Linkable</A
></TD
><TD CLASS="rdoc"
>old linkable, if we have one
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; m <A HREF="HscTypes.html#t%3AHomeModInfo"
>HomeModInfo</A
></TD
><TD CLASS="rdoc"
>the complete HomeModInfo, if successful
</TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:link"
><A NAME="v%3Alink"
></A
></A
><B
>link</B
> :: <A HREF="DynFlags.html#t%3AGhcLink"
>GhcLink</A
> -&gt; <A HREF="DynFlags.html#t%3ADynFlags"
>DynFlags</A
> -&gt; <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool"
>Bool</A
> -&gt; <A HREF="HscTypes.html#t%3AHomePackageTable"
>HomePackageTable</A
> -&gt; <A HREF="../base/System-IO.html#t%3AIO"
>IO</A
> <A HREF="BasicTypes.html#t%3ASuccessFlag"
>SuccessFlag</A
></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.4.2</TD
></TR
></TABLE
></BODY
></HTML
>