package coq-serapi

  1. Overview
  2. Docs
Serialization library and protocol for machine interaction with the Coq proof assistant

Install

Dune Dependency

Authors

Maintainers

Sources

coq-serapi-8.18.0.0.18.1.tbz
sha256=3958ec27603e3f927a74f11d02d98390e8ecda942bb23f37ff6fa575b31a8158
sha512=d33f9340de6e1426a42192da3610a7636b0201baa166cf788926b866738ae299219439bc22112cc81591c565dd857f66e53a41a3cfe420844f31fb6077abe57b

doc/src/serlib_firstorder/ser_g_ground.ml.html

Source file ser_g_ground.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
open Serlib

open Sexplib.Conv
open Ppx_compare_lib.Builtin
open Ppx_hash_lib.Std.Hash.Builtin

module Loc = Ser_loc
module Names = Ser_names
module Libnames = Ser_libnames
module Locus = Ser_locus
(* module Globnames = Ser_globnames *)

type h1 = Libnames.qualid list
  [@@deriving sexp, hash, compare]

type h2 = Names.GlobRef.t Loc.located Locus.or_var list
[@@deriving sexp, hash, compare]

type h3 = Names.GlobRef.t list
[@@deriving sexp,hash,compare]

let ser_wit_firstorder_using :
  (Libnames.qualid list,
   Names.GlobRef.t Loc.located Locus.or_var list,
   Names.GlobRef.t list) Ser_genarg.gen_ser =
  Ser_genarg.{
    raw_ser = sexp_of_h1
  ; raw_des = h1_of_sexp
  ; raw_hash = hash_fold_h1
  ; raw_compare = compare_h1

  ; glb_ser = sexp_of_h2
  ; glb_des = h2_of_sexp
  ; glb_hash = hash_fold_h2
  ; glb_compare = compare_h2

  ; top_ser = sexp_of_h3
  ; top_des = h3_of_sexp
  ; top_hash = hash_fold_h3
  ; top_compare = compare_h3
  }

let register () =
  Ser_genarg.register_genser Firstorder_plugin.G_ground.wit_firstorder_using ser_wit_firstorder_using;
  ()

let _ = register ()
OCaml

Innovation. Community. Security.