<Sect1 id="sec-DirectoryExts">
<Title><literal>DirectoryExts</literal>
<IndexTerm>
  <Primary>DirectoryExts</Primary>
  <secondary>library</secondary>
</IndexTerm>
</Title>

<Para>
The <literal>DirectoryExts</literal> module follows the footstep of
other '<literal>Exts</literal>' modules and provides functionality
that goes beyond what the Haskell 98 module
<literal>Directory</literal> offers. That is, functionality that
provides access to file/directory operations in an OS-independent
manner.
</Para>


<Para>
<literal>DirectoryExts</literal> currently exports the following:
</Para>

<Para>
<programlisting>
copyFile  :: FilePath -&#62; FilePath -&#62; IO ()
</programlisting>

<IndexTerm>
  <Primary><literal>copyFile</literal></Primary>
  <secondary>file copying</secondary>
</IndexTerm>
</para>

<Para>
Notes:

<ItemizedList>
<ListItem>
<Para>
<Function>copyFile</Function> lets you copy a file to another
non-existent file.
</Para>

<Para>
File copying is done external to Haskell, and is for natural
reasons quicker as a result and, most importantly, file copying
handles the number of the OS-specific error conditions that might
arise as a result of trying to perform the file copy operation.
</Para>

<Para>
Should the file copying operation for some reason not succeed, the
action <function>copyFile</function> raises an IO exception to
signal the fact.
</Para>
</ListItem>

</ItemizedList>
</Para>

</sect1>
