12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849(************************************************************************)(* * The Coq Proof Assistant / The Coq Development Team *)(* v * Copyright INRIA, CNRS and contributors *)(* <O___,, * (see version control and CREDITS file for authors & dates) *)(* VV/ **************************************************************)(* // * This file is distributed under the terms of the *)(* * GNU Lesser General Public License Version 2.1 *)(* * (see LICENSE file for the text of the license) *)(************************************************************************)(************************************************************************)(* 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 *)(************************************************************************)openSexplib.StdopenPpx_hash_lib.Std.Hash.BuiltinopenPpx_compare_lib.BuiltinmoduletypeExtS=sigincludeCSig.MapS(* module SSet : Ser_cSet.ExtS *)includeSerType.SJHC1withtype'at:='atendmoduleMake(M:CSig.MapS)(S:SerType.SJHCwithtypet=M.key)=structincludeMmoduleBijectSpec=structtype'at='aM.ttype'a_t=(S.t*'a)list[@@derivingsexp,yojson,hash,compare]letto_tl=List.fold_left(fune(k,s)->M.addkse)M.emptylletof_t=M.bindingsendincludeSerType.Biject1(BijectSpec)end