package visitors

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

Install

dune-project
 Dependency

Authors

Maintainers

Sources

archive.tar.gz
md5=7c01160dbafe507efc1e8e1dcf77e8f8
sha512=4925ff567954f2da32ea41a87ca2740689bb86e0d37dd9d95ef6eee3f8dd6b8081d513ff919ed29517c98d79ec5175f81f51df3d5c6afce1a162b50797225f14

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: 16 Nov 2025

README

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.37.0"
  5. ocaml >= "4.14.2"

Dev Dependencies

None

Used by (9)

  1. archetype >= "0.1.11"
  2. catala >= "0.3.0" & < "1.0.0~alpha"
  3. clangml-transforms < "0.25"
  4. electrod
  5. flow_parser < "0.229.1"
  6. karamel
  7. kremlin < "transition"
  8. morbig
  9. rotor

Conflicts

None