package visitors

  1. Overview
  2. Docs
An OCaml syntax extension for generating visitor classes

Install

Dune Dependency

Authors

Maintainers

Sources

archive.tar.gz
md5=67e71ef359301a52f38223f6e1ece7d3
sha512=1635a676c27a6ee4422d56546369b41eb7a611500fb8e3bb32934acd2d7e44b2250c95537e2570291c25940379e683e8f6a54ee443d3b1ebdaadad4f6c6ec973

Description

Annotating an algebraic data type definition with [@@deriving visitors { ... }] causes visitor classes to be automatically generated. A visitor is an object that knows how to traverse and transform a data structure.

Published: 10 Feb 2020

README

README.md

An OCaml syntax extension (technically, a ppx_deriving plugin) which generates object-oriented visitors for traversing and transforming data structures.

Here is the documentation of the latest released version.

The easiest way of installing the latest released version of this package is via opam, the OCaml package manager.

opam update
opam install visitors

To install the latest development version, also via opam, please proceed as follows:

  git clone https://gitlab.inria.fr/fpottier/visitors.git
  cd visitors
  make pin

To install the latest development version, outside of opam, please proceed as follows:

  git clone https://gitlab.inria.fr/fpottier/visitors.git
  cd visitors
  opam install . --deps-only
  make install

Dependencies (6)

  1. dune >= "2.0"
  2. result
  3. ppx_deriving >= "4.4" & < "5.0"
  4. ppx_tools
  5. cppo build
  6. ocaml >= "4.02.3" & < "4.12"

Dev Dependencies

None

Used by (11)

  1. archetype >= "0.1.11"
  2. catala >= "0.3.0"
  3. clangml = "4.0.0beta1"
  4. clangml-transforms = "0.24"
  5. electrod
  6. flow_parser = "0.159.0"
  7. flowtype >= "0.87.0"
  8. karamel
  9. kremlin < "transition"
  10. morbig
  11. rotor

Conflicts

None