package coq-serapi
Serialization library and protocol for machine interaction with the Coq proof assistant
Install
Dune Dependency
Authors
Maintainers
Sources
coq-serapi-8.20.0.0.20.0.tbz
sha256=ead9382f111ea385008fe9037513ff1f738dd90d8e989b8d1a0c9290963d9afe
sha512=b29103c2d1eb3cf8a33fa9ddf26b5a6c89e7277cd31256589bcae8a89c37a3de7a3c3e7fe5d376358e874d44dc6c60ab96736cbd1037511ab36705e9f40f0ade
doc/src/serlib_ltac2/ser_tac2env.ml.html
Source file ser_tac2env.ml
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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
(************************************************************************) (* SerAPI: Coq interaction protocol with bidirectional serialization *) (************************************************************************) (* Copyright 2016-2019 MINES ParisTech -- License LGPL 2.1+ *) (* Copyright 2019-2023 Inria -- License LGPL 2.1+ *) (* Written by: Emilio J. Gallego Arias and others *) (************************************************************************) open Serlib open Ltac2_plugin open Sexplib.Std open Ppx_hash_lib.Std.Hash.Builtin open Ppx_compare_lib.Builtin module Util = Ser_util module Loc = Ser_loc module CAst = Ser_cAst module Names = Ser_names module Tac2expr = Ser_tac2expr module WL2in1 = struct type raw = Tac2expr.uid CAst.t list * Tac2expr.raw_tacexpr [@@deriving sexp,hash,compare] type glb = Tac2expr.uid list * Tac2expr.glb_tacexpr [@@deriving sexp,hash,compare] type top = Util.Empty.t [@@deriving sexp,hash,compare] end let ser_wit_ltac2in1 = let module M = Ser_genarg.GS(WL2in1) in M.genser module WL2in1V = struct type raw = Tac2expr.uid CAst.t list * Tac2expr.raw_tacexpr [@@deriving sexp,hash,compare] type glb = Tac2expr.glb_tacexpr [@@deriving sexp,hash,compare] type top = Util.Empty.t [@@deriving sexp,hash,compare] end let ser_wit_ltac2in1_val = let module M = Ser_genarg.GS(WL2in1V) in M.genser module WLC2 = struct type raw = Tac2expr.raw_tacexpr [@@deriving sexp,hash,compare] type glb = Names.Id.Set.t * Tac2expr.glb_tacexpr [@@deriving sexp,hash,compare] type top = Util.Empty.t [@@deriving sexp,hash,compare] end let ser_wit_ltac2_constr = let module M = Ser_genarg.GS(WLC2) in M.genser type var_quotation_kind = [%import: Ltac2_plugin.Tac2env.var_quotation_kind] [@@deriving sexp,yojson,hash,compare] module WLQ2 = struct type raw = Names.lident option * Names.lident [@@deriving sexp,hash,compare] type glb = var_quotation_kind * Names.Id.t [@@deriving sexp,hash,compare] type top = Util.Empty.t [@@deriving sexp,hash,compare] end let ser_wit_ltac2_var_quotation = let module M = Ser_genarg.GS(WLQ2) in M.genser module WLV2 = struct type raw = Util.Empty.t [@@deriving sexp,hash,compare] type glb = unit [@@deriving sexp,hash,compare] type top = Util.Empty.t [@@deriving sexp,hash,compare] end let ser_wit_ltac2_val = let module M = Ser_genarg.GS(WLV2) in M.genser let register () = Ser_genarg.register_genser Tac2env.wit_ltac2in1 ser_wit_ltac2in1; Ser_genarg.register_genser Tac2env.wit_ltac2in1_val ser_wit_ltac2in1_val; Ser_genarg.register_genser Tac2env.wit_ltac2_constr ser_wit_ltac2_constr; Ser_genarg.register_genser Tac2env.wit_ltac2_var_quotation ser_wit_ltac2_var_quotation; Ser_genarg.register_genser Tac2env.wit_ltac2_val ser_wit_ltac2_val; () let () = register ()
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>