<html><head> <link rel="stylesheet" href="style.css" type="text/css"> <meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> <link rel="Start" href="index.html"> <link title="Index of types" rel=Appendix href="index_types.html"> <link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> <link title="Index of values" rel=Appendix href="index_values.html"> <link title="Index of modules" rel=Appendix href="index_modules.html"> <link title="Index of module types" rel=Appendix href="index_module_types.html"> <link title="FileUtil" rel="Chapter" href="FileUtil.html"> <link title="FileUtilStr" rel="Chapter" href="FileUtilStr.html"> <link title="FilePath" rel="Chapter" href="FilePath.html"><title>FileUtil.mv</title> </head> <body> <code class="code"><span class="keyword">let</span> <span class="keyword">rec</span> mv ?(force=<span class="constructor">Force</span>) fln_src fln_dst =<br> <span class="keyword">let</span> fln_src_abs = make_absolute (pwd ()) fln_src<br> <span class="keyword">in</span><br> <span class="keyword">let</span> fln_dst_abs = make_absolute (pwd ()) fln_dst<br> <span class="keyword">in</span><br> <span class="keyword">if</span> compare fln_src_abs fln_dst_abs <> 0 <span class="keyword">then</span><br> (<br> <span class="keyword">if</span> test <span class="constructor">Exists</span> fln_dst_abs <span class="keywordsign">&&</span> doit force fln_dst <span class="keyword">then</span><br> (<br> rm [fln_dst_abs];<br> mv fln_src_abs fln_dst_abs<br> )<br> <span class="keyword">else</span> <span class="keyword">if</span> test <span class="constructor">Is_dir</span> fln_dst_abs <span class="keyword">then</span><br> (<br> mv ~force<br> fln_src_abs<br> (make_absolute <br> fln_dst_abs <br> (basename fln_src_abs))<br> )<br> <span class="keyword">else</span> <span class="keyword">if</span> test <span class="constructor">Exists</span> fln_src_abs <span class="keyword">then</span><br> (<br> <span class="keyword">try</span> <br> <span class="constructor">Sys</span>.rename fln_src_abs fln_dst_abs<br> <span class="keyword">with</span> <span class="constructor">Sys_error</span> _ <span class="keywordsign">-></span><br> (<br> cp ~force ~recurse:<span class="keyword">true</span> [fln_src_abs] fln_dst_abs;<br> rm ~force ~recurse:<span class="keyword">true</span> [fln_src_abs]<br> )<br> )<br> <span class="keyword">else</span><br> (<br> raise <span class="constructor">MvNoSourceFile</span><br> )<br> )</code></body></html>