package ppx_sexp_conv
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=1691e0c3f744512d863545cd85720e2ab27a211d8d4c4bc7591659f90ff1f77a
md5=acb33a38721f4a16f71add6afaa315da
doc/CHANGES.html
v0.11
- Depend on ppxlib instead of (now deprecated) ppx_core, ppx_driver and ppx_metaquot.
v0.10
- Added new
[@@deriving sexp]record-field attribute,[@sexp.omit_nil], for a field that is omitted if its sexp representation is(). - Improved
[%sexp_of: 'a]and[%of_sexp: 'a]to not expose variable names intended for internal use.
v0.9
113.43.00
- Fix generator for polymorphic types where var names clashes with type name:
type 't t = ...
113.33.00
- Clean up the documentation for sexplib, modernizing it to include
ppx_sexp_conv, and breaking up the documentation between sexplib andppx_sexp_conv. Also changed the formatting to use org-mode, so it will render properly on github. Markdown doesn't render well by default, unless you use quite different conventions about linebeaks.
113.24.00
- Trying to improve the tests in ppx_sexp_conv because they are a mess. At least all tests are automatic now. And more things are tested like the sexpification of exceptions.
- Update to follow
Type_convandPpx_coreevolution. Make ppx_sexp_conv correctly handle aliases to polymorphic variants:
type t =
A@@deriving sexptype u = t@@deriving sexptype v =u |B@@deriving sexpBefore,
v_of_sexpwould never manage to readB. This problem is now fixed if you usesexp_polyonuinstead ofsexp, and if you don't, you get an "unbound value __u_of_sexp__". People should usesexp_polywhen they have a polymorphic variant type that is not syntactically a polymorphic variant, but in practice it's simpler to replacesexpbysexp_poly` when faced with the error above.The need for
sexp_polyshould happen only in one new case: an implementation saystype u = t@@deriving sexpbut the interface says `type u =A@@deriving sexp. (the old case where it was already needed is when you have an interface that says `type u = t `@@deriving sexpand in some other implementation you try to saytype t =That_module.t |A`@@deriving sexp``).