]> matita.cs.unibo.it Git - helm.git/blobdiff - components/grafite/grafiteAst.ml
now destruct takes an optional list of term rather than a sigle optional term
[helm.git] / components / grafite / grafiteAst.ml
index d5eb9c241259efcb7fc1ff0e24d328b92f68bad8..2b0f4db5f1ad329091df4241cbf1247e466e67cf 100644 (file)
@@ -27,7 +27,7 @@
 
 type direction = [ `LeftToRight | `RightToLeft ]
 
-type loc = Token.flocation
+type loc = Stdpp.location
 
 type ('term, 'lazy_term, 'ident) pattern =
   'lazy_term option * ('ident * 'term) list * 'term option
@@ -71,7 +71,7 @@ type ('term, 'lazy_term, 'reduction, 'ident) tactic =
   | Cut of loc * 'ident option * 'term
   | Decompose of loc * 'ident option list
   | Demodulate of loc
-  | Destruct of loc * 'term
+  | Destruct of loc * 'term list option
   | Elim of loc * 'term * 'term option * ('term, 'lazy_term, 'ident) pattern *
            'ident intros_spec
   | ElimType of loc * 'term * 'term option * 'ident intros_spec
@@ -96,7 +96,6 @@ type ('term, 'lazy_term, 'reduction, 'ident) tactic =
   | Right of loc
   | Ring of loc
   | Split of loc
-  | Subst of loc
   | Symmetry of loc
   | Transitivity of loc * 'term
   (* Costruttori Aggiunti *)
@@ -140,11 +139,12 @@ type 'term macro =
 
 (** To be increased each time the command type below changes, used for "safe"
  * marshalling *)
-let magic = 11
+let magic = 12
 
 type ('term,'obj) command =
   | Index of loc * 'term option (* key *) * UriManager.uri (* value *)
-  | Coercion of loc * UriManager.uri * bool (* add_obj *) * int (* arity *)
+  | Coercion of loc * UriManager.uri * bool (* add_obj *) *
+     int (* arity *) * int (* saturations *)
   | Default of loc * string * UriManager.uri list
   | Drop of loc
   | Include of loc * string