]> matita.cs.unibo.it Git - helm.git/blobdiff - matitaB/components/grafite_parser/grafiteParser.ml
Matitaweb:
[helm.git] / matitaB / components / grafite_parser / grafiteParser.ml
index 7985512d938db4f14b773107530bacbe516f93c3..a632069947d37c40e5d31a9308b2401d20fb6f98 100644 (file)
@@ -42,15 +42,17 @@ let exc_located_wrapper f =
       raise (HExtlib.Localized 
         (floc,CicNotationParser.Parse_error (Printexc.to_string exn)))
 
-type parsable = Grammar.parsable
+type parsable = Grammar.parsable * Ulexing.lexbuf
 
 let parsable_statement status buf =
  let grammar = CicNotationParser.level2_ast_grammar status in
-  Grammar.parsable grammar (Obj.magic buf)
+  Grammar.parsable grammar (Obj.magic buf), buf
 
 let parse_statement grafite_parser parsable =
   exc_located_wrapper
-    (fun () -> (Grammar.Entry.parse_parsable (Obj.magic grafite_parser) parsable))
+    (fun () -> (Grammar.Entry.parse_parsable (Obj.magic grafite_parser) (fst parsable)))
+
+let strm_of_parsable (_,buf) = buf
 
 let add_raw_attribute ~text t = N.AttributedTerm (`Raw text, t)