]> matita.cs.unibo.it Git - helm.git/commitdiff
wrap object_not_found
authorEnrico Tassi <enrico.tassi@inria.fr>
Tue, 16 Dec 2008 13:53:03 +0000 (13:53 +0000)
committerEnrico Tassi <enrico.tassi@inria.fr>
Tue, 16 Dec 2008 13:53:03 +0000 (13:53 +0000)
helm/software/components/ng_kernel/nCicLibrary.ml

index ae721526b948e6ff1bf723fd133c79ff852bef1e..946535fe1fd8d5cb70775fcb38bc2dc5d7730a81 100644 (file)
@@ -20,12 +20,16 @@ let get_obj u =
   with Not_found ->
     (* in the final implementation should get it from disk *)
     let ouri = NCic2OCic.ouri_of_nuri u in
-    let o,_ = CicEnvironment.get_obj CicUniv.oblivion_ugraph ouri in
-    let l = OCic2NCic.convert_obj ouri o in
-    List.iter (fun (u,_,_,_,_ as o) -> 
-(*       prerr_endline ("+"^NUri.string_of_uri u);  *)
-      NUri.UriHash.add cache u o) l;
-    HExtlib.list_last l
+    try
+      let o,_ = CicEnvironment.get_obj CicUniv.oblivion_ugraph ouri in
+      let l = OCic2NCic.convert_obj ouri o in
+      List.iter (fun (u,_,_,_,_ as o) -> 
+  (*       prerr_endline ("+"^NUri.string_of_uri u);  *)
+        NUri.UriHash.add cache u o) l;
+      HExtlib.list_last l
+    with CicEnvironment.Object_not_found u -> 
+      raise (ObjectNotFound 
+               (lazy (NUri.string_of_uri (OCic2NCic.nuri_of_ouri u))))
 ;;
 
 let clear_cache () = NUri.UriHash.clear cache;;