package batteries

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

Install

Dune Dependency

Authors

Maintainers

Sources

v3.7.1.tar.gz
md5=d02c4f044e53edca010de46f9139ce00
sha512=99a5afa3604c4cf0c849c670111d617f7f255acb0da043b73ddffdf0e299948bce52516ee31921f269de6088156c4e0a187e0b931543c6819c6b25966b303281

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.

OCaml

Innovation. Community. Security.