]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/cic_textual_parser/cicTextualParserContext.ml
generate HTML templates using XSLT starting from a bunch of .src files
[helm.git] / helm / ocaml / cic_textual_parser / cicTextualParserContext.ml
index ae21e5d2e0e8193bcd78da63708634e8609cf955..c9dfe664b2f9f20666a45466c561c9c701f50a07 100644 (file)
  * http://cs.unibo.it/helm/.
  *)
 
-let main ~current_uri ~context lexer lexbuf =
+let main ~context ~metasenv lexer lexbuf =
  (* Warning: higly non-reentrant code!!! *)
- CicTextualParser0.current_uri := current_uri ;
  CicTextualParser0.binders := context ;
- let res = CicTextualParser.main lexer lexbuf in
-  CicTextualParser0.binders := [] ;
-  res
+ CicTextualParser0.metasenv := metasenv ;
+ let dom,mk_term = CicTextualParser.main lexer lexbuf in
+  let metasenv' = !CicTextualParser0.metasenv in
+   dom,
+    function interp ->
+     CicTextualParser0.metasenv := metasenv' ;
+     let term = mk_term interp in 
+     let metasenv = !CicTextualParser0.metasenv in
+      metasenv,term
 ;;