package pa_ppx
Install
Dune Dependency
Authors
Maintainers
Sources
sha512=f2edc95ae6b2cf2ea23f540ec6d268d028a73d4099565e003813e50019d5a982e5f9c52710fab6cafb238cf577e4c71486a6a411554e7865187fee567533d632
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: 18 Jan 2021
Dependencies (13)
- ounit
-
uint
>= "2.0.1"
-
bos
>= "0.2.0"
- sexplib0
-
yojson
>= "1.7.0"
-
result
>= "1.5"
-
pcre
>= "7.4.3"
-
not-ocamlfind
>= "0.01"
-
camlp5
>= "8.00" & < "8.00.02"
- conf-perl-string-shellquote
- conf-perl-ipc-system-simple
- conf-perl
-
ocaml
= "4.10.0" | = "4.10.1" | = "4.10.2" | = "4.11.0" | = "4.11.1" | = "4.12.0"
Dev Dependencies
None
Used by (6)
-
GT
>= "0.5.3"
-
pa_ppx_ag
< "0.08"
-
pa_ppx_hashcons
< "0.08"
-
pa_ppx_migrate
< "0.08"
-
pa_ppx_q_ast
< "0.08"
-
pa_ppx_unique
< "0.08"
Conflicts
None