pa_ppx

PPX Rewriters for Ocaml, written using Camlp5
Description

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.

Install
Published
02 Oct 2020
Sources
0.03.tar.gz
sha512=b5d847ecf7a4b19002467eb312425f764199e99637c704d4542bb8c320b96c04b267ef0d78efae29843108968d7f9b64ed02fc2cb9681eb85cad96b9d326957c
Dependencies
expect_test_helpers
with-test & >= "v0.13.0"
ppx_sexp_conv
with-test & >= "v0.13.0"
ppx_here
with-test & >= "v0.13.0"
ppx_deriving_yojson
with-test & >= "3.5.2"
ppx_import
with-test & >= "1.7.1" & < "2.0"
uint
>= "2.0.1"
bos
>= "0.2.0"
ounit2
>= "2.2.3"
yojson
>= "1.7.0"
pcre
>= "7.4.3"
not-ocamlfind
>= "0.01"
camlp5
>= "8.00~alpha03" & < "8.00"
ocaml
>= "4.10.0" & < "4.12.0"
Reverse Dependencies