]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/matita/matitaEngine.mli
1. new expressions AND, OR, XOR
[helm.git] / helm / software / matita / matitaEngine.mli
index 3fb5c7637540ea1df970c994157718633a0368f1..032ee2c1e18ac904ad9c5ad0c244272a8de2b942 100644 (file)
 
 val eval_ast :
   ?do_heavy_checks:bool ->
-  ?clean_baseuri:bool ->
   LexiconEngine.status ->
   GrafiteTypes.status ->
   string * int *
   ((CicNotationPt.term, CicNotationPt.term,
-   CicNotationPt.term GrafiteAst.reduction, CicNotationPt.obj, string)
+   CicNotationPt.term GrafiteAst.reduction, CicNotationPt.term CicNotationPt.obj, string)
    GrafiteAst.statement) ->
   ((GrafiteTypes.status * LexiconEngine.status) *
-   (DisambiguateTypes.domain_item * DisambiguateTypes.codomain_item) option
-  ) list
+   (DisambiguateTypes.domain_item * LexiconAst.alias_spec) option) list
 
 
 (* heavy checks slow down the compilation process but give you some interesting
  * infos like if the theorem is a duplicate *)
 
+exception EnrichedWithLexiconStatus of exn * LexiconEngine.status
+
 (* should be used only by the compiler since it looses the
    * disambiguation_context (text,prefix_len,_) *)
 val eval_from_stream :
   first_statement_only:bool ->
   include_paths:string list ->
-  ?prompt:bool ->
   ?do_heavy_checks:bool ->
-  ?clean_baseuri:bool ->
+  ?enforce_no_new_aliases:bool -> (* default true *)
+  ?watch_statuses:(LexiconEngine.status -> GrafiteTypes.status -> unit) ->
   LexiconEngine.status ->
   GrafiteTypes.status ->
   Ulexing.lexbuf ->
   (GrafiteTypes.status ->
    (CicNotationPt.term, CicNotationPt.term,
-    CicNotationPt.term GrafiteAst.reduction, CicNotationPt.obj, string)
+    CicNotationPt.term GrafiteAst.reduction, CicNotationPt.term CicNotationPt.obj, string)
    GrafiteAst.statement -> unit) ->
   ((GrafiteTypes.status * LexiconEngine.status) *
-   (DisambiguateTypes.domain_item * DisambiguateTypes.codomain_item) option
-  ) list
+   (DisambiguateTypes.domain_item * LexiconAst.alias_spec) option) list
 
+(* this callback is called on every grafite command *)
+val set_callback: (GrafiteParser.ast_statement -> unit) -> unit