X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=helm%2Focaml%2Fcic_annotations_cache%2FcicCache.ml;h=0885397581690671e0f04ab6cb3e109e5846dc0e;hb=bafecec2d4af08af32249b4ec75db477a6024c7b;hp=b26bddbf8fb86a171e6448a6a5405cfab3262504;hpb=5a92117eeff70048d29e91ba24e113155d956e1b;p=helm.git diff --git a/helm/ocaml/cic_annotations_cache/cicCache.ml b/helm/ocaml/cic_annotations_cache/cicCache.ml index b26bddbf8..088539758 100644 --- a/helm/ocaml/cic_annotations_cache/cicCache.ml +++ b/helm/ocaml/cic_annotations_cache/cicCache.ml @@ -39,13 +39,25 @@ let get_annobj uri = let module G = Getter in let module U = UriManager in let cicfilename = G.getxml (U.cicuri_of_uri uri) in - match CicParser.term_of_xml cicfilename uri true with - (_, None) -> assert false - | (annobj, Some ids_to_targets) -> - if U.uri_is_annuri uri then - begin - let annfilename = G.getxml (U.annuri_of_uri uri) in - CicAnnotationParser.annotate annfilename ids_to_targets - end ; - (annobj, ids_to_targets) + let cicbodyfilename = + match U.bodyuri_of_uri uri with + None -> None + | Some bodyuri -> + Some (G.getxml (U.cicuri_of_uri bodyuri)) + in + let annobj = CicParser.annobj_of_xml cicfilename cicbodyfilename in + Unix.unlink cicfilename ; + (match cicbodyfilename with None -> () | Some fn -> Unix.unlink fn) ; + annobj, + if U.uri_is_annuri uri then + begin + let annfilename = G.getxml (U.annuri_of_uri uri) in + let res = + Some (CicAnnotationParser.get_annotations annfilename) + in + Unix.unlink annfilename ; + res + end + else + None ;;