package crs

  1. Overview
  2. Docs
A tool for managing inline review comments embedded in source code

Install

dune-project
 Dependency

Authors

Maintainers

Sources

crs-0.0.20260307.tbz
sha256=77f77c61e908a6716fa876f5648f662ffaf7e24be4a7889fd6b53121592311bb
sha512=5fc6252650571c4127ebb1e61fecf78c5d4ce35e2832dff47125cda1448e07ea6d4da5e3a9a28643e3491d3594b0ee8857214241f98bd0296ada2c35ea8daa4b

doc/crs.stdlib/Crs_stdlib/Option/index.html

Module Crs_stdlib.OptionSource

include module type of struct include Option end

Options

Sourcetype 'a t = 'a option =
  1. | None
  2. | Some of 'a

The type for option values. Either None or a value Some v.

Sourceval none : 'a option

none is None.

Sourceval some : 'a -> 'a option

some v is Some v.

Sourceval value : 'a option -> default:'a -> 'a

value o ~default is v if o is Some v and default otherwise.

Sourceval get : 'a option -> 'a

get o is v if o is Some v and raise otherwise.

Sourceval join : 'a option option -> 'a option

join oo is Some v if oo is Some (Some v) and None otherwise.

Sourceval fold : none:'a -> some:('b -> 'a) -> 'b option -> 'a

fold ~none ~some o is none if o is None and some v if o is Some v.

Predicates and comparisons

Sourceval is_none : 'a option -> bool

is_none o is true if and only if o is None.

Sourceval is_some : 'a option -> bool

is_some o is true if and only if o is Some o.

Sourceval equal : ('a -> 'a -> bool) -> 'a option -> 'a option -> bool

equal eq o0 o1 is true if and only if o0 and o1 are both None or if they are Some v0 and Some v1 and eq v0 v1 is true.

Sourceval compare : ('a -> 'a -> int) -> 'a option -> 'a option -> int

compare cmp o0 o1 is a total order on options using cmp to compare values wrapped by Some _. None is smaller than Some _ values.

Converting

Sourceval to_result : none:'e -> 'a option -> ('a, 'e) result

to_result ~none o is Ok v if o is Some v and Error none otherwise.

Sourceval to_list : 'a option -> 'a list

to_list o is [] if o is None and [v] if o is Some v.

Sourceval to_seq : 'a option -> 'a Seq.t

to_seq o is o as a sequence. None is the empty sequence and Some v is the singleton sequence containing v.

Sourceval bind : 'a t -> f:('a -> 'b t) -> 'b t
Sourceval iter : 'a t -> f:('a -> unit) -> unit
Sourceval map : 'a t -> f:('a -> 'b) -> 'b t