Travesty_containers.Zipper_intfSourceS_non_monadic contains the core operations of a zipper, without any parametrisation over a particular failure monad.
S_monadic contains the core operations of a zipper, parametrised over a particular failure monad.
S contains S_non_monadic; a functor for generating S_monadic over a custom monad; and specialisations of it over common monads.
type ('mark, 'a, 'acc, 'final) fold_outcome = [ | `Stop of 'finalStop folding, immediately return
*)| `Drop of 'accDrop the cursor and continue
*)| `Swap of 'a * 'accReplace cursor with a new value
*)| `Mark of 'mark * 'a * 'accReplace, and mark, the cursor
*) ]The type of instructions returned by functions used with fold_until_m and fold_until.
S_marked_non_monadic extends S_non_monadic to add functions for manipulating marks.
S_marked_monadic extends S_monadic to add functions for manipulating marks.
Basic_mark is the interface that mark types must implement.