]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/cic/cicParser.ml
removed no longer used METAs
[helm.git] / helm / ocaml / cic / cicParser.ml
index d81521f99e335e18b77ca2d20092298e3b646ae0..a7ad3c9cf1f88c8cc56cfdadad7c119c3098bc45 100644 (file)
@@ -23,6 +23,8 @@
  * http://helm.cs.unibo.it/
  *)
 
+(* $Id$ *)
+
 let debug = false
 let debug_print s = if debug then prerr_endline (Lazy.force s)
 
@@ -686,7 +688,13 @@ let end_element ctxt tag =
             let fields =
               List.map
                 (function
-                  | Obj_field name -> name
+                  | Obj_field name -> 
+                      (match Str.split (Str.regexp " ") name with
+                      | [name] -> name, false
+                      | [name;"coercion"] -> name,true
+                      | _ -> 
+                          parse_error
+                            "wrong \"field\"'s name attribute")
                   | _ ->
                       parse_error
                         "unexpected extra content for \"record\" object class")
@@ -763,7 +771,7 @@ let annobj_of_xml uri filename filenamebody =
       (match parse uri filename, parse uri filenamebody with
       | Cic_constant_type (type_id, name, params, typ, obj_attributes),
         Cic_constant_body (body_id, _, _, body, _) ->
-          Cic.AConstant (type_id, Some body_id, name, Some body, typ, params,[])
+          Cic.AConstant (type_id, Some body_id, name, Some body, typ, params,obj_attributes)
       | _ ->
           raise (Parser_failure (sprintf "no constant found in %s, %s"
             filename filenamebody)))