ppxlibversion
Standard infrastructure for ppx rewriters
Ppxlib is the standard infrastructure for ppx rewriters and other programs that manipulate the in-memory representation of OCaml programs, a.k.a the "Parsetree".
It also comes bundled with two ppx rewriters that are commonly used to
write tools that manipulate and/or generate Parsetree values;
ppxlib.metaquot
which allows to construct Parsetree values using the
OCaml syntax directly and ppxlib.traverse
which provides various
ways of automatically traversing values of a given type, in particular
allowing to inject a complex structured value into generated code.
Author | Jane Street Group, LLC <opensource@janestreet.com> |
---|---|
License | MIT |
Published | |
Homepage | https://github.com/ocaml-ppx/ppxlib |
Issue Tracker | https://github.com/ocaml-ppx/ppxlib/issues |
Maintainer | opensource@janestreet.com |
Available | opam-version >= "2.1.0" |
Dependencies |
|
Conflicts |
|
Source [http] | https://github.com/ocaml-ppx/ppxlib/archive/ac7fcfc88d574609b62cc0a38e0de59d03cc96de.tar.gz sha256=d679f110b92ed12156556ee1d3779d11cef605c36f0bc417943e7996f0d2bbaf sha512=c34e704f19bcebbe5dbb764783f9e8b9bcb44e22388bbd4074f1f3e44faf9d1aa2d05040690512b3a8c120ecff54787107bd6912f4e5f2980a17e5357b1beeed |
Edit | https://github.com/ocaml/opam-repository/tree/master/packages/ppxlib/ppxlib.0.33.1~5.3preview/opam |
Required by
- arrayjit
- awsm-codegen
- bam-ppx
- base_quickcheck=v0.13.0 | >=v0.14.1
- bisect_ppx>=2.8.3
- bistro>=0.6.0
- bonsai>=v0.16.0
- bytestring
- clangml>=4.7.0
- cmdlang-to-base
- comby<1.3.0
- commons
- config
- diff
- dunewith-dev-setup & >=3.17.0
- ego
- eliom>=8.9.0
- elpi>=1.11.0 & <1.11.3 | >=1.13.2
- embedded_ocaml_templates<0.3.1 | >=0.7
- extunixbuild & >=0.3.1
- flow_parser>=0.229.1
- fsml
- gen_js_api>=1.0.6 & <1.0.8 | >=1.1.1
- genprint=0.3
- goblint>=2.5.0
- gospel>=0.2.0
- graphql_ppx>=1.2.2
- GT=0.5.1
- hack_parallel>=1.0.1
- hardcaml>=v0.14.1
- html_of_jsx>=0.0.2
- http_async
- js_of_ocaml>=3.8.0
- js_of_ocaml-compiler>=3.8.0
- js_of_ocaml-lwtwith-test & >=3.10.0
- js_of_ocaml-ocamlbuildwith-test & >=3.10.0 & <5.0
- js_of_ocaml-ppx>=3.8.0
- js_of_ocaml-ppx_deriving_json>=3.7.1
- js_of_ocaml-toplevel>=3.10.0
- js_of_ocaml-tyxmlwith-test & >=3.10.0
- jsoo-react
- lablqml>=0.7
- landmarks-ppx
- lascar>=0.7.0
- learn-ocaml>=0.13.0
- learn-ocaml-client>=0.13.0
- lens>=1.2.5
- let-if>=0.2.0
- logs-ppx
- lwt_ppx>=2.0.2
- melange>=1.0.0
- melange-json>=1.2.0
- melange-json-native
- merlinwith-test & >=4.7-412
- metapp>=0.4.4
- metaquot>=0.5.0
- MlFront_Cliwith-test & >=2.1.4~prerel2
- mlt_parser=v0.13.0 | >=v0.14.1
- mlx
- mutaml>=0.2
- neural_nets_lib
- noCanren>=0.3.0~alpha1
- node_of_ocaml
- nuscr>=2.0.0
- obus>=1.2.5
- ocaml-monadic>=0.5
- ocamlformat=0.19.0~4.13preview
- ocamlmerlin-mlx
- OCanren-ppx=0.2.0 | >=0.3.0
- ocf_ppx
- ocsigen-i18n>=4.0.0
- ocsigen-ppx-rpc
- octez-internal-libs
- ojs_base_ppx
- ometrics=0.2.0
- ortac-core
- ortac-qcheck-stm
- override=0.2.2
- pacomb
- pancake
- pgocaml_ppx>=4.3.0
- pla>=2.0
- ppx-owl-opt
- ppx_accessor>=v0.14.3
- ppx_assert>=v0.13.0
- ppx_bap
- ppx_base>=v0.13.0
- ppx_bench>=v0.15.1
- ppx_bin_prot>=v0.13.0
- ppx_bitstring>=4.1.0
- ppx_blob>=0.7.2
- ppx_camlrack
- ppx_catch
- ppx_cold
- ppx_compare>=v0.13.0
- ppx_compose>=0.2.1
- ppx_const>=2.0.1
- ppx_conv_func>=v0.13.0
- ppx_counters
- ppx_css
- ppx_cstruct>=6.0.0
- ppx_cstubs>=0.6.1
- ppx_csv_conv>=v0.13.0
- ppx_custom_printf>=v0.14.1
- ppx_decimal
- ppx_default
- ppx_defer>=0.5.0
- ppx_demo
- ppx_derive_at_runtime
- ppx_deriving>=5.2
- ppx_deriving_cad
- ppx_deriving_decoders
- ppx_deriving_encoding>=0.2
- ppx_deriving_ezjsonm
- ppx_deriving_hardcaml>=v0.13.0
- ppx_deriving_hash
- ppx_deriving_json_schema
- ppx_deriving_jsonschema
- ppx_deriving_jsoo>=0.2
- ppx_deriving_madcast>=0.2
- ppx_deriving_popper
- ppx_deriving_protobuf>=3.0.0
- ppx_deriving_qcheck
- ppx_deriving_rpc>=8.1.0
- ppx_deriving_scad
- ppx_deriving_variant_string
- ppx_deriving_yaml
- ppx_deriving_yojson>=3.7.0
- ppx_diff
- ppx_disable_unused_warnings
- ppx_distr_guards>=0.3
- ppx_dream_eml
- ppx_embed_file
- ppx_enumerate>=v0.13.0
- ppx_expect>=v0.13.0 & !=v0.14.0
- ppx_factory=0.1.0 | >=0.2.0
- ppx_fail>=v0.13.0
- ppx_fields_conv>=v0.14.2
- ppx_fixed_literal
- ppx_fun>=0.0.9
- ppx_gen_rec>=2.0.0
- ppx_getenv>=2.1
- ppx_globalize
- ppx_hardcaml>=v0.17.0
- ppx_hash>=v0.13.0
- ppx_here>=v0.13.0
- ppx_ignore_instrumentation
- ppx_import>=1.7.0 & <1.8.0 | >=1.11.0
- ppx_inline_alcotest
- ppx_inline_test>=v0.15.1
- ppx_interact
- ppx_irmin>=3.0.0
- ppx_jane>=v0.13.0
- ppx_js_style>=v0.13.0
- ppx_jsobject_conv=0.8.0 | >=0.9.3
- ppx_jsonaf_conv>=v0.15.1
- ppx_let>=v0.13.0
- ppx_log
- ppx_lun
- ppx_make
- ppx_map
- ppx_matches
- ppx_mica
- ppx_minidebug
- ppx_module_timer>=v0.13.0
- ppx_monad
- ppx_monoid>=0.3.3
- ppx_mysql>=1.1.3
- ppx_open
- ppx_optcomp>=v0.14.2
- ppx_optint
- ppx_optional>=v0.13.0
- ppx_parser
- ppx_partial
- ppx_pattern_bind>=v0.13.1
- ppx_pipebang>=v0.13.0
- ppx_protocol_conv>=5.1.3
- ppx_pyformat
- ppx_python>=v0.15.0
- ppx_quick_test
- ppx_rapper<1.0.1
- ppx_regexp>=0.5.0
- ppx_repr>=0.6.0
- ppx_seq
- ppx_sexp_conv>=v0.15.1
- ppx_sexp_message>=v0.14.1
- ppx_sexp_value>=v0.13.0
- ppx_show>=0.2.0
- ppx_stable>=v0.14.1
- ppx_stable_witness
- ppx_string>=v0.14.1
- ppx_string_conv
- ppx_string_interpolation
- ppx_subliner
- ppx_system
- ppx_trace
- ppx_ts
- ppx_tydi
- ppx_type_directed_value
- ppx_typed_fields
- ppx_typerep_conv>=v0.14.2
- ppx_units
- ppx_update
- ppx_variants_conv>=v0.14.2
- ppx_viewpattern
- ppx_xml_conv>=v0.13.0
- ppx_yojson>=1.3.0
- ppx_yojson_conv>=v0.15.1
- ppxlib_jane
- ppxx>=2.5.0
- qcowbuild & >=0.11.0
- rdf_ppx
- reactjs-jsx-ppx
- reason>=3.9.0
- reason-react-ppx
- refl>=0.4.1
- repr-fuzz>=0.2.1
- res_tailwindcss
- rescript-syntax
- scaml!=1.2.0
- sedlex>=2.6
- serde_derive
- server-reason-react
- speed
- spinwith-test & >=0.8.0
- spoc_ppx
- stdint-literals
- stk_ppx
- streamable
- styled-ppx
- togglelog
- toplevel_expect_test>=v0.14.1
- tyxml-jsx>=4.5.0
- tyxml-ppx>=4.5.0
- tyxml-syntax>=4.5.0
- visitors>=20210608
- vlt
- wtr<3.0.0
- wtr-ppx
- xtmpl_ppx
Optionally used by