package visitors

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

Install

Dune Dependency

Authors

Maintainers

Sources

archive.tar.gz
md5=b9e69f4f8f896a8c916e18551a4a4a95
sha512=2aa6aef225feedb790f3e89341ecf796b29e76604b0c2f2f9bea71ff5cd83c2cfcd0a496e60117e158ac78ae009002daa57df0b016b6bf7b08cd6d305a3fe7b6

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: 27 Jan 2021

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 (5)

  1. dune >= "2.0"
  2. result
  3. ppx_deriving >= "5.0"
  4. ppxlib >= "0.9.0" & < "0.22.0"
  5. ocaml >= "4.07.0"

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