accessor

A library that makes it nicer to work with nested functional data structures
IN THIS PACKAGE
Module Accessor . General
type ('inner, 'outer, 'kind) t = {
f : 'w. ( 'kind, 'w ) Accessor__Dictionary.t -> ( 'inner, 'w ) Accessor__Mapping.t -> ( 'outer, 'w ) Accessor__Mapping.t;
}

Here is a summary of the type parameters in (i -> a -> b, it -> at -> bt, c) Accessor.General.t:

  • i is the output index type
  • a is the type of value that is read
  • b is the type of value that is written
  • it is the input index type
  • at is the type of value that is read from
  • bt is the type of value resulting from a write
  • c is the kind of accessor

This is the most general way to express the type of an accessor. For many cases, Accessor.t or Accessor.Indexed.t will suffice.

The representation is exposed, but not intended to be used directly.