forked from rocq-archive/coq-serapi
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ser_cEphemeron.ml
34 lines (27 loc) · 1.39 KB
/
ser_cEphemeron.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
(************************************************************************)
(* v * The Coq Proof Assistant / The Coq Development Team *)
(* <O___,, * INRIA - CNRS - LIX - LRI - PPS - Copyright 1999-2016 *)
(* \VV/ **************************************************************)
(* // * This file is distributed under the terms of the *)
(* * GNU Lesser General Public License Version 2.1 *)
(************************************************************************)
(************************************************************************)
(* Coq serialization API/Plugin *)
(* Copyright 2016-2019 MINES ParisTech *)
(************************************************************************)
(* Status: Experimental *)
(************************************************************************)
type 'a key = 'a CEphemeron.key
module EBiject = struct
type 'a t = 'a CEphemeron.key
type 'a _t = 'a [@@deriving sexp,yojson,hash,compare]
let to_t x = CEphemeron.create x
let of_t x = CEphemeron.get x
end
module B = SerType.Biject1(EBiject)
let sexp_of_key = B.sexp_of_t
let key_of_sexp = B.t_of_sexp
let key_of_yojson = B.of_yojson
let key_to_yojson = B.to_yojson
let hash_fold_key = B.hash_fold_t
let compare_key = B.compare