package ppx_type_directed_value

Not available on OCaml 5.5
  1. Overview
  2. Docs
Get [@@deriving]-style generation of type-directed values without writing a ppx

Install

dune-project
 Dependency

Authors

Maintainers

Sources

ppx_type_directed_value-v0.15.0.tar.gz
sha256=2d72561276b7b3cc39bd60ca84b202881f0afbc7b96e93705972b2cc7ad83fbc

Description

Ppx_type_directed_value is a ppx that does [@@deriving]-style generation of type-directed values based on user-provided modules. The user-provided modules tell ppx_type_directed_value how to compose type-directed values (for example, combine type-directed values of the fields of a record to form a type-directed value for the record itself).

This allows a wide variety of PPXs such as ppx_sexp_conv, ppx_compare, ppx_enumerate, etc. to be implemented with ppx_type_directed_value, but with some runtime cost.

This PPX currently supports deriving type-directed values for records, ordinary & polymorphic variants and tuples. It also supports custom user-defined attributes on record and variant fields.

Added to opam-repository:

Dependencies (5)

  1. ppxlib >= "0.23.0"
  2. dune >= "2.0.0"
  3. ppx_jane >= "v0.15" & < "v0.16"
  4. base >= "v0.15" & < "v0.16"
  5. ocaml >= "4.08.0"

Dev Dependencies

None

Optional Dependencies

None

Used by

None

Conflicts

None

Build status

Results of building ppx_type_directed_value with each compiler on check.ci.ocaml.org, run of against opam-repository 8a77e58. All results for this package.

Each result links to its build log. To keep crawlers from overloading the site, build logs require a GitHub sign-in (see ocurrent/opam-health-check). On your first log, GitHub asks you to “Authorize opam-health-check”, the OCurrent app that runs these checks; it sees only your public profile, not your repositories. The sign-in lasts 30 days.

Version OCaml 4.11 OCaml 4.14 OCaml 5.2 OCaml 5.4 OCaml 5.5
v0.15.0 (this version) good good good n/a n/a
  • good Package successfully built
  • partial One of the dependencies failed to build
  • bad Package failed to build
  • n/a Package is not available in this environment
  • internal Internal failure