To focus the search input from anywhere on the page, press the 'S' key.
in-package search v0.1.0
-
travesty
-
-
travesty_containers
-
-
travesty_core_kernel_exts
Library
Module
Module type
Parameter
Class
Class type
Extensions for containers.
We keep these in the main Travesty library because it's useful to pull them in for mappable and traversable containers.
As usual, we store the extension signatures in a separate intf module.
include module type of Container_exts_intf
Generic extensions
As is often the case in Travesty
, we define an arity-generic signature first, then specialise it for arity-0 and arity-1 containers.
module type Generic = sig ... end
Containers of predicates
The following functions concern containers of predicates (functions of type 'a -> bool
).
module type Generic_predicate = sig ... end
Arity-0 container extensions
These extensions target arity-0 containers (implementations of Container.S0
).
module type S0 = sig ... end
Extensions for a Container.S0
.
module type S0_predicate = sig ... end
Extensions for a Container.S0
whose elements are predicates.
Arity-1 container extensions
These extensions target arity-1 containers (implementations of Container.S1
).
module type S1 = sig ... end
Extensions for a Container.S1
.
Extension functors
These functors extend Core containers with the extensions described in S0 and S1.
Extend0
creates extensions for a Container.S0
.
module Extend0_predicate
(P : Base.T)
(C : Base.Container.S0 with type elt = P.t -> Base.bool) :
S0_predicate with type t := C.t and type item := P.t
Extend0_predicate
creates extensions for a Container.S0
over predicates.
Extend1
creates extensions for a Container.S1
.