1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# 11 "plugins/derive/g_derive.mlg"
open Stdarg
let _ = Mltop.add_known_module "coq-core.plugins.derive"
# 19 "plugins/derive/g_derive.mlg"
let classify_derive_command _ = Vernacextend.(VtStartProof (Doesn'tGuaranteeOpacity,[]))
let () = Vernacextend.static_vernac_extend ~plugin:(Some "coq-core.plugins.derive") ~command:"Derive" ~classifier:( classify_derive_command ) ?entry:None
[(Vernacextend.TyML (false, Vernacextend.TyTerminal ("Derive",
Vernacextend.TyNonTerminal (Extend.TUentry (Genarg.get_arg_tag wit_identref),
Vernacextend.TyTerminal ("SuchThat",
Vernacextend.TyNonTerminal (Extend.TUentry (Genarg.get_arg_tag wit_constr),
Vernacextend.TyTerminal ("As", Vernacextend.TyNonTerminal (
Extend.TUentry (Genarg.get_arg_tag wit_identref),
Vernacextend.TyNil)))))),
(let coqpp_body f suchthat lemma
() = Vernacextend.vtopenproof (fun () -> (
# 27 "plugins/derive/g_derive.mlg"
Derive.start_deriving f.CAst.v suchthat lemma.CAst.v
)) in fun f
suchthat lemma ?loc ~atts () -> coqpp_body f suchthat lemma
(Attributes.unsupported_attributes atts)), None))]