12345678910111213141516171819202122232425262728293031323334(************************************************************************)(* 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 MINES ParisTech *)(************************************************************************)(* Status: Very Experimental *)(************************************************************************)(* We force the thunks in serialization *)openSexplibmoduleCAst=Ser_cAsttype('a,'b)thunk=[%import:('a,'b)DAst.thunk]letsexp_of_thunk:typeab.(a->Sexp.t)->(b->Sexp.t)->(a,b)thunk->Sexp.t=funf_t->matchtwith|Valuev->fv|Thunkt->f(Lazy.forcet)letthunk_of_sexp:typeab.(Sexp.t->a)->(Sexp.t->b)->Sexp.t->(a,b)thunk=funf_s->Value(fs)type('a,'b)t=[%import:('a,'b)DAst.t][@@derivingsexp]