| NSkip of loc
| NFocus of loc * int list
| NUnfocus of loc
+ | NTry of loc * ntactic
+ | NAssumption of loc
+ | NRepeat of loc * ntactic
+ | NBlock of loc * ntactic list
type ('term, 'lazy_term, 'reduction, 'ident) tactic =
(* Higher order tactics (i.e. tacticals) *)
(** To be increased each time the command type below changes, used for "safe"
* marshalling *)
-let magic = 23
+let magic = 25
type ('term,'obj) command =
| Index of loc * 'term option (* key *) * UriManager.uri (* value *)
int (* arity *) * int (* saturations *)
| PreferCoercion of loc * 'term
| Inverter of loc * string * 'term * bool list
- | UnificationHint of loc * 'term * int (* term, precedence *)
| Default of loc * string * UriManager.uri list
| Drop of loc
- | Include of loc * bool (* normal? *) * string
+ | Include of loc * bool (* normal? *) * [`New | `OldAndNew] * string
| Obj of loc * 'obj
| Relation of
loc * string * 'term * 'term * 'term option * 'term option * 'term option
| Set of loc * string * string
| Print of loc * string
| Qed of loc
+
+type ncommand =
+ | UnificationHint of loc * CicNotationPt.term * int (* term, precedence *)
| NObj of loc * CicNotationPt.term CicNotationPt.obj
| NUnivConstraint of loc * bool * NUri.uri * NUri.uri
| NQed of loc
type ('term, 'lazy_term, 'reduction, 'obj, 'ident) code =
| Command of loc * ('term, 'obj) command
+ | NCommand of loc * ncommand
| Macro of loc * ('term,'lazy_term) macro
| NTactic of loc * ntactic list
| Tactic of loc * ('term, 'lazy_term, 'reduction, 'ident) tactic option