]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/lexicon/lexiconSync.ml
The aliases and multi_aliases in the lexicon status are now
[helm.git] / helm / software / components / lexicon / lexiconSync.ml
index 9010dfcff01cbdefb4e74f1080a230cbcae0f89e..a3a0d766e884924ce5ae9995123cb32f2a8629dc 100644 (file)
 let alias_diff ~from status = 
   let module Map = DisambiguateTypes.Environment in
   Map.fold
-    (fun domain_item (description1,_ as codomain_item) acc ->
+    (fun domain_item codomain_item acc ->
+      let description1 = LexiconAst.description_of_alias codomain_item in
       try
-       let description2,_ = Map.find domain_item from.LexiconEngine.aliases in
+       let description2 = 
+          LexiconAst.description_of_alias 
+            (Map.find domain_item from.LexiconEngine.aliases)
+       in
         if description1 <> description2 then
          (domain_item,codomain_item)::acc
         else
@@ -39,6 +43,7 @@ let alias_diff ~from status =
        Not_found ->
          (domain_item,codomain_item)::acc)
     status.LexiconEngine.aliases []
+;;
 
 let alias_diff =
  let profiler = HExtlib.profile "alias_diff(conteg. anche in include)" in
@@ -60,8 +65,8 @@ let extract_alias types uri =
 let build_aliases =
  List.map
   (fun (name,uri) ->
-    DisambiguateTypes.Id name,
-     (UriManager.string_of_uri uri, fun _ _ _ -> CicUtil.term_of_uri uri))
+    DisambiguateTypes.Id name, LexiconAst.Ident_alias (name, 
+     UriManager.string_of_uri uri))
 
 let add_aliases_for_inductive_def status types uri = 
   let aliases = build_aliases (extract_alias types uri) in
@@ -89,7 +94,7 @@ let add_aliases_for_objs =
 module OrderedId = 
 struct
   type t = CicNotation.notation_id
-  let compare = Pervasives.compare
+  let compare =  CicNotation.compare_notation_id
 end
 
 module IdSet  = Set.Make (OrderedId)
@@ -109,3 +114,5 @@ let time_travel ~present ~past =
   in
    List.iter CicNotation.remove_notation notation_to_remove
 
+let push () = CicNotation.push ();;
+let pop () = CicNotation.pop ();;