package batteries

  1. Overview
  2. Docs
A community-maintained standard library extension

Install

dune-project
 Dependency

Authors

Maintainers

Sources

batteries-3.10.0.tar.gz
md5=b7f3b99f12f21b1da6b6aa13d993206d
sha512=8b7f2479eb0271bcfd9168887c1e4a9a815c512eab3ee61b150fc4dfa9ec803e4f73115155f20b3017e4a822148d0e6d1c1e8e5f96790fd691b419dd39a908a2

doc/batteries.unthreaded/BatBounded/Make/index.html

Module BatBounded.MakeSource

Functor to build an implementation of a bounded type given the bounded values definition M

Parameters

module M : BoundedType

Signature

Sourcetype base_u = M.base_t

Raw unbounded type

Sourcetype u = M.t

base_u after bounding constraints have been applied

type t = private M.t

Private version of u to avoid construction of t values without using make below.

val bounds : base_u bound_t * base_u bound_t

bounds defines the (min, max) bounds for the bounded range

Sourceval make : base_u -> t

make x will return a value of type t derived from x.

Sourceval extract : t -> u

extract x will return x as a value of type u. A similar result could be achieved with (x :> u)

Sourceval map : (base_u -> base_u) -> t -> t option

map f x applies f to x. Returns Some y if x can be converted back to type base_u, otherwise returns None.

Sourceval map2 : (base_u -> base_u -> base_u) -> t -> t -> t option

map2 f x y applies f to x and y. Returns Some z if x and y can be converted back to type base_u, otherwise returns None.

Sourceval map_exn : (base_u -> base_u) -> t -> t

map_exn f x applies f to x. Returns y if x can be converted back to type base_u, otherwise raise an exception.

Sourceval map2_exn : (base_u -> base_u -> base_u) -> t -> t -> t

map2_exn f x y applies f to x and y. Returns z if x and y can be converted back to type base_u, otherwise raise an exception.