]> matita.cs.unibo.it Git - helm.git/commitdiff
Variant are not indexed.
authorAndrea Asperti <andrea.asperti@unibo.it>
Mon, 27 Nov 2006 12:32:11 +0000 (12:32 +0000)
committerAndrea Asperti <andrea.asperti@unibo.it>
Mon, 27 Nov 2006 12:32:11 +0000 (12:32 +0000)
components/grafite_engine/grafiteSync.ml

index 9581dc9d6a708bc5522b8d145db045977ae40cf3..10dfef58aa0d18a74195f8d2f85bf7e72012c439 100644 (file)
 
 open Printf
 
+let is_a_variant obj = 
+  match obj with
+    | Cic.Constant(_,_,_,_,attrs) ->
+       List.exists (fun x -> x = `Flavour `Variant) attrs
+    | _ -> false
+
 let uris_for_inductive_type uri obj =
   match obj with 
     | Cic.InductiveDefinition(types,_,_,_) ->
@@ -79,10 +85,15 @@ let add_obj refinement_toolkit uri obj status =
    let status = GrafiteTypes.add_moo_content index_cmd status in
    (universe,status)
  in
+ let uris_to_index = 
+   if is_a_variant obj then []
+   else (uris_for_inductive_type uri obj)@lemmas 
+ in
  let universe,status =
    List.fold_left add_to_universe 
      (status.GrafiteTypes.universe,status) 
-     ((uris_for_inductive_type uri obj)@lemmas) in
+     uris_to_index 
+ in
   {status with 
      GrafiteTypes.objects = uri::status.GrafiteTypes.objects;
      GrafiteTypes.universe = universe},