aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorMaxime Dénès2019-02-26 10:19:18 +0100
committerMaxime Dénès2019-02-26 10:19:18 +0100
commit3459155e1c629a2f932c4d4d917b0f69aa89ccf7 (patch)
tree8f1db2c3e2a0d89a412c9c19b6ca458160f4c6c4 /doc
parentfc76c77ac6e509c1bccc2823ce2037d21a53276a (diff)
parentd31056ec924ef6e09b28bc3822b427b67a8a300b (diff)
Merge PR #9567: [vernac] Unify declaration hooks.
Ack-by: SkySkimmer Ack-by: ejgallego Reviewed-by: mattam82 Reviewed-by: maximedenes
Diffstat (limited to 'doc')
-rw-r--r--doc/plugin_tutorial/tuto1/src/simple_declare.ml9
1 files changed, 5 insertions, 4 deletions
diff --git a/doc/plugin_tutorial/tuto1/src/simple_declare.ml b/doc/plugin_tutorial/tuto1/src/simple_declare.ml
index 9d10a8ba72..e370d37fc4 100644
--- a/doc/plugin_tutorial/tuto1/src/simple_declare.ml
+++ b/doc/plugin_tutorial/tuto1/src/simple_declare.ml
@@ -1,5 +1,5 @@
(* Ideally coq/coq#8811 would get merged and then this function could be much simpler. *)
-let edeclare ident (_, poly, _ as k) ~opaque sigma udecl body tyopt imps hook =
+let edeclare ?hook ident (_, poly, _ as k) ~opaque sigma udecl body tyopt imps =
let sigma = Evd.minimize_universes sigma in
let body = EConstr.to_constr sigma body in
let tyopt = Option.map (EConstr.to_constr sigma) tyopt in
@@ -9,16 +9,17 @@ let edeclare ident (_, poly, _ as k) ~opaque sigma udecl body tyopt imps hook =
(Option.List.cons tyopt [body]) in
let sigma = Evd.restrict_universe_context sigma uvars in
let univs = Evd.check_univ_decl ~poly sigma udecl in
+ let uctx = Evd.evar_universe_context sigma in
let ubinders = Evd.universe_binders sigma in
let ce = Declare.definition_entry ?types:tyopt ~univs body in
- DeclareDef.declare_definition ident k ce ubinders imps ~hook
+ let hook_data = Option.map (fun hook -> hook, uctx, []) hook in
+ DeclareDef.declare_definition ident k ce ubinders imps ?hook_data
let packed_declare_definition ~poly ident value_with_constraints =
let body, ctx = value_with_constraints in
let sigma = Evd.from_ctx ctx in
let k = (Decl_kinds.Global, poly, Decl_kinds.Definition) in
let udecl = UState.default_univ_decl in
- let nohook = Lemmas.mk_hook (fun _ x -> ()) in
- ignore (edeclare ident k ~opaque:false sigma udecl body None [] nohook)
+ ignore (edeclare ident k ~opaque:false sigma udecl body None [])
(* But this definition cannot be undone by Reset ident *)