synopsis: "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. """ opam-version: "2.0" maintainer: "Chet Murthy " authors: ["Chet Murthy"] homepage: "https://github.com/camlp5/pa_ppx" license: "BSD-3-Clause" bug-reports: "https://github.com/camlp5/pa_ppx/issues" dev-repo: "git+https://github.com/camlp5/pa_ppx.git" doc: "https://github.com/camlp5/pa_ppx/doc" depends: [ "ocaml" { >= "4.10.0" & < "4.12.0" } "camlp5" { >= "8.00~alpha03" & < "8.00" } "not-ocamlfind" { >= "0.01" } "pcre" { >= "7.4.3" } "yojson" { >= "1.7.0" } "ounit2" { >= "2.2.3" } "bos" { >= "0.2.0" } "base" "sexplib" "ppx_deriving_protobuf" { >= "2.7" } "uint" { >= "2.0.1" } "ppx_import" {with-test & >= "1.7.1" & < "2.0"} "ppx_deriving_yojson" { with-test & >= "3.5.2" } "ppx_here" { with-test & >= "v0.13.0" } "ppx_sexp_conv" { with-test & >= "v0.13.0" } "expect_test_helpers" { with-test & >= "v0.13.0" } ] depexts: [ [ "libstring-shellquote-perl" "libipc-system-simple-perl" ] {os-family = "debian"} [ "perl-string-shellquote" "perl-ipc-system-simple" ] {os-distribution = "alpine"} [ "perl-String-ShellQuote" "perl-IPC-System-Simple" ] {os-distribution = "centos"} [ "perl-String-ShellQuote" "perl-IPC-System-Simple" ] {os-family = "suse" | os-family = "opensuse"} [ "perl-String-ShellQuote" "perl-IPC-System-Simple" ] {os-family = "fedora"} ] available: [ os != "macos" ] build: [ [make "get-generated"] [make "sys"] [make "test"] {with-test} ] install: [make "install"] url { src: "https://github.com/camlp5/pa_ppx/archive/0.03.tar.gz" checksum: [ "sha512=b5d847ecf7a4b19002467eb312425f764199e99637c704d4542bb8c320b96c04b267ef0d78efae29843108968d7f9b64ed02fc2cb9681eb85cad96b9d326957c" ] }