aboutsummaryrefslogtreecommitdiff
path: root/theories/Notations.v
diff options
context:
space:
mode:
Diffstat (limited to 'theories/Notations.v')
-rw-r--r--theories/Notations.v6
1 files changed, 6 insertions, 0 deletions
diff --git a/theories/Notations.v b/theories/Notations.v
index dc09812254..f16a3a9161 100644
--- a/theories/Notations.v
+++ b/theories/Notations.v
@@ -204,6 +204,12 @@ Ltac2 Notation "econstructor" := Control.enter (fun () => Std.constructor true).
Ltac2 Notation econstructor := econstructor.
Ltac2 Notation "econstructor" n(tactic) bnd(thunk(with_bindings)) := constructor0 true n bnd.
+Ltac2 specialize0 c pat :=
+ enter_h false (fun _ c => Std.specialize c pat) c.
+
+Ltac2 Notation "specialize" c(thunk(seq(constr, with_bindings))) ipat(opt(seq("as", intropattern))) :=
+ specialize0 c ipat.
+
Ltac2 elim0 ev c bnd use :=
let f ev ((c, bnd, use)) := Std.elim ev (c, bnd) use in
enter_h ev f (fun () => c (), bnd (), use ()).