package pa_ppx
Install
Dune Dependency
Authors
Maintainers
Sources
sha512=2cf78681f647bfca058fe0fa82ff91078c7aaee82e2a44f7988d3a0d858bdefc1e8b51c04e4904eb2d1a9f1867688eb55334a32d62120f1a9d3f514ff17e97b0
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.
Published: 15 Feb 2025
Dependencies (14)
Dev Dependencies (6)
-
ppx_sexp_conv
with-test & >= "v0.13.0"
-
ppx_here
with-test & >= "v0.13.0"
-
ppx_deriving_yojson
with-test & >= "3.5.2" & >= "3.8.0"
-
ppx_deriving
with-test & >= "6.0.2"
-
ppx_import
with-test & >= "1.7.1" & <= "1.11.0"
-
sexplib
with-test & >= "v0.14.0"
Used by (11)
-
GT
>= "0.5.3"
-
pa_ppx_ag
< "0.08"
-
pa_ppx_hashcons
< "0.08" | >= "0.10"
-
pa_ppx_migrate
< "0.08" | = "0.10" | >= "0.12"
- pa_ppx_parsetree
-
pa_ppx_q_ast
< "0.08" | = "0.11"
- pa_ppx_quotation2extension
- pa_ppx_regexp
- pa_ppx_static
- pa_ppx_string
-
pa_ppx_unique
< "0.08" | >= "0.10"