]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/matita/matitaEngine.mli
alias diffing/insertion is now handled by matitaEngine (invoked both
[helm.git] / helm / matita / matitaEngine.mli
index 9311215f3d563c0b6e729c456c133421d71231da..ddc905db36e26a41384d62695e0f9be92c010bcd 100644 (file)
  * http://helm.cs.unibo.it/
  *)
 
-exception Drop
+val eval_ast :
+  ?do_heavy_checks:bool ->
+  ?clean_baseuri:bool ->
+  LexiconEngine.status ->
+  GrafiteTypes.status ->
+  (CicNotationPt.term, CicNotationPt.term,
+   CicNotationPt.term GrafiteAst.reduction, CicNotationPt.obj, string)
+  GrafiteAst.statement ->
+  ((GrafiteTypes.status * LexiconEngine.status) *
+   (DisambiguateTypes.domain_item * DisambiguateTypes.codomain_item) option
+  ) list
 
-val eval_string: MatitaTypes.status ref -> string -> unit
 
-val eval_from_stream: 
-  MatitaTypes.status ref -> char Stream.t -> 
-    (MatitaTypes.status ->
-    (CicAst.term,TacticAst.obj,string) TacticAst.statement -> unit) ->
-    unit
+(* heavy checks slow down the compilation process but give you some interesting
+ * infos like if the theorem is a duplicate *)
+val eval_string :
+  include_paths:string list ->
+  ?do_heavy_checks:bool ->
+  ?clean_baseuri:bool ->
+  LexiconEngine.status ->
+  GrafiteTypes.status ->
+  string ->
+  ((GrafiteTypes.status * LexiconEngine.status) *
+   (DisambiguateTypes.domain_item * DisambiguateTypes.codomain_item) option
+  ) list
 
-val eval_from_stream_greedy: 
-  MatitaTypes.status ref-> char Stream.t -> 
-    (MatitaTypes.status ->
-    (CicAst.term,TacticAst.obj,string) TacticAst.statement -> unit) ->
-    unit
-
-val eval_ast: 
-  MatitaTypes.status ->
-    (CicAst.term,TacticAst.obj,string) TacticAst.statement ->
-    MatitaTypes.status
-
-val initial_status: MatitaTypes.status lazy_t
+val eval_from_stream :
+  include_paths:string list ->
+  ?prompt:bool ->
+  ?do_heavy_checks:bool ->
+  ?clean_baseuri:bool ->
+  LexiconEngine.status ->
+  GrafiteTypes.status ->
+  Ulexing.lexbuf ->
+  (GrafiteTypes.status ->
+   (CicNotationPt.term, CicNotationPt.term,
+    CicNotationPt.term GrafiteAst.reduction, CicNotationPt.obj, string)
+   GrafiteAst.statement -> unit) ->
+  ((GrafiteTypes.status * LexiconEngine.status) *
+   (DisambiguateTypes.domain_item * DisambiguateTypes.codomain_item) option
+  ) list