package fix

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Indexing.IndexSource

The submodule Index allows safely manipulating indices into a finite set.

Sourcetype 'n t = 'n index
Sourceval of_int : 'n cardinal -> int -> 'n index

If n is the cardinal of the type-level set n, then of_int n casts an integer i of type int into an index: that is, of_int n i returns i at type n index. The integer i must lie in the semi-open interval [0, n). This is enforced by a runtime check. Calling of_int n i fixes the cardinal n.

Sourceval to_int : 'n index -> int

to_int casts an index i back to an ordinary integer value.

Sourceval iter : 'n cardinal -> ('n index -> unit) -> unit

iter n yield calls yield i successively for every index in the range [0, n), in increasing order.

Sourceval rev_iter : 'n cardinal -> ('n index -> unit) -> unit

rev_iter n yield calls yield i successively for every index in the range [0, n), in decreasing order.

Sourceexception End_of_set

This exception is raised by an iterator (created by enumerate) that is queried after it has been exhausted.

Sourceval enumerate : 'n cardinal -> unit -> 'n index

enumerate n returns an imperative iterator, which produces all indices in the range [0, n) in increasing order. Querying the iterator after all elements have been produced causes the exception End_of_set to be raised.

OCaml

Innovation. Community. Security.