accessor

A library that makes it nicer to work with nested functional data structures
IN THIS PACKAGE
Parameter #1 Accessor . Optional_getter . Make_access . T
type ('a, 'b) t
val optional_getter : ( 'at -> 'a Base.option ) -> ( 'a, 'b ) t -> ( 'at, 'bt ) t

A legal implementation of this function must satisfy the following properties:

optional_getter Option.some = Fn.id
Fn.compose (optional_getter f) (optional_getter g)
=
optional_getter (fun a -> Option.bind (f a) ~f:g)