pa_ppxversion

PPX Rewriters for Ocaml, written using Camlp5

This is a collection of PPX rewriters, re-implementing those based on ppxlib and other libraries, but instead based on Camlp5. Included is also a collection of support libraries for writing new PPX rewriters. Included are:

pa_assert: ppx_assert pa_ppx.deriving, pa_ppx.deriving_plugins (enum, eq, fold, iter, make, map, ord, sexp, show, yojson): ppx_deriving, plugins, ppx_sexp_conv, ppx_deriving_yojson pa_ppx.expect_test: ppx_expect_test pa_ppx.here: ppx_here pa_ppx.import: ppx_import pa_ppx.inline_test: ppx_inline_test

pa_ppx.undo_deriving: pa_ppx.deriving expands [@@deriving ...] into code; this rewriter undoes that. pa_ppx.unmatched_vala: expands to match-cases (support library for camlp5-based PPX rewriters) pa_ppx.hashrecons: support for writing AST rewriters that automatically fills in hash-consing boilerplate pa_dock: implements doc-comment extraction for camlp5 preprocessors

Many of the reimplementations in fact offer significant enhanced function, described in the pa_ppx documentation. In addition, there is an extensive test-suite, much of it slightly modified versions of the tests for the respective PPX rewriters.

AuthorChet Murthy
LicenseBSD-3-Clause
Published
Homepagehttps://github.com/camlp5/pa_ppx
Issue Trackerhttps://github.com/camlp5/pa_ppx/issues
MaintainerChet Murthy <chetsky@gmail.com>
Dependencies
Conflicts
Source [http] https://github.com/camlp5/pa_ppx/archive/refs/tags/0.13.tar.gz
sha512=b6215cae67472238f1f6a418920149b0572f28c7f3c4ff1889027b4a294f3d24154439929255d71ae844ca8fbb7d68eca11721a6e9d4e0cbb35d26ed9df7d41f
Edithttps://github.com/ocaml/opam-repository/tree/master/packages/pa_ppx/pa_ppx.0.13/opam