(fun uri ->
let uri = Pcre.replace ~rex:xpointer_RE ~templ:"" uri in
List.iter
- (fun suffix -> Http_getter_storage.remove (uri ^ suffix ^ ".xml.gz"))
+ (fun suffix -> MatitaMisc.safe_remove (uri ^ suffix ^ ".xml.gz"))
[""; ".body"; ".types"])
owned_uris;
List.iter (fun statement ->
* http://helm.cs.unibo.it/
*)
+(** removes a file if it exists *)
+val safe_remove: string -> unit
+
val is_dir: string -> bool (** @return true if file is a directory *)
val is_regular: string -> bool (** @return true if file is a regular file *)
let remove_coercion uri =
CoercDb.remove_coercion (fun (_,_,u) -> UriManager.eq u uri)
-let safe_remove fname = if Sys.file_exists fname then Sys.remove fname
-
let time_travel ~present ~past =
let list_of_objs_to_remove = List.rev (delta_status past present) in
(* List.rev is just for the debugging code, which otherwise may list both
* something.ind and something.ind#xpointer ... (ask Enrico :-) *)
let debug_list = ref [] in
List.iter (fun (uri,p) ->
- safe_remove p;
+ MatitaMisc.safe_remove p;
remove_coercion uri;
(try
CicEnvironment.remove_obj uri
(fun uri ->
(try
MatitaLog.debug ("Removing: " ^ UriManager.string_of_uri uri);
- safe_remove (Http_getter.resolve' uri)
+ MatitaMisc.safe_remove (Http_getter.resolve' uri)
with Http_getter_types.Key_not_found _ -> ());
remove_coercion uri;
ignore (MatitaDb.remove_uri uri))