]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/grafite_engine/grafiteSync.mli
- pretty printer made robust in face of list_nth
[helm.git] / helm / software / components / grafite_engine / grafiteSync.mli
index 42b29a9fa3432990c4654f27e9c34a08e9f84814..d15896dab89823a41c8f9d6ab2fad4d522fdb0e1 100644 (file)
  *)
 
 val add_obj:
-  RefinementTool.kit ->
+  pack_coercion_obj:(Cic.obj -> Cic.obj) ->
   UriManager.uri -> Cic.obj -> GrafiteTypes.status ->
    GrafiteTypes.status * UriManager.uri list
 
 val add_coercion:
-  RefinementTool.kit ->
+  pack_coercion_obj:(Cic.obj -> Cic.obj) ->
   add_composites:bool -> GrafiteTypes.status ->
-  UriManager.uri -> int ->
+  UriManager.uri -> int -> int ->
   string (* baseuri *) ->
-    GrafiteTypes.status * (UriManager.uri * int) list (* URI and arity *)
+    GrafiteTypes.status * UriManager.uri list
+
+val prefer_coercion: 
+  GrafiteTypes.status -> UriManager.uri -> GrafiteTypes.status 
 
 val time_travel: 
   present:GrafiteTypes.status -> past:GrafiteTypes.status -> unit
 
-  (* also resets the imperative part of the status *)
-val init: unit -> GrafiteTypes.status
+  (* also resets the imperative part of the status 
+   * init: the baseuri of the current script *)
+val init: LexiconEngine.status -> string -> GrafiteTypes.status
+
+(*
+  (* just an empty status, does not reset imperative 
+   * part, use push/pop for that *)
+val initial_status: string -> GrafiteTypes.status
+*)
+
+  (* preserve _only_ imperative parts of the status *)
+val push: unit -> unit
+val pop: unit -> unit