package tezos-base

  1. Overview
  2. Docs

Allows to build interval of built-in OCaml int integers. The encoding used is Data_encoding.int31 regardless of the actual bounds.

  • raises Invalid_argument

    if the bounds provided cannot be representable on 4 bytes (depends on whether int is represented on 4 bytes or 8 bytes which depends on the machine architecture)..

Parameters

module B : BOUNDS with type ocaml_type := int

Signature

type t

Internal representation of a bounded value.

include BOUNDS with type ocaml_type := int
val min_value : int

min_value represents the minimal value (included) reprensatable.

val max_value : int

max_value represents the maximal value (included) reprensatable.

include Tezos_stdlib.Compare.S with type t := t
val (=) : t -> t -> bool

x = y iff compare x y = 0

val (<>) : t -> t -> bool

x <> y iff compare x y <> 0

val (<) : t -> t -> bool

x < y iff compare x y < 0

val (<=) : t -> t -> bool

x <= y iff compare x y <= 0

val (>=) : t -> t -> bool

x >= y iff compare x y >= 0

val (>) : t -> t -> bool

x > y iff compare x y > 0

val compare : t -> t -> int

compare an alias for the functor parameter's compare function

val equal : t -> t -> bool

equal x y iff compare x y = 0

val max : t -> t -> t

max x y is x if x >= y otherwise it is y

val min : t -> t -> t

min x y is x if x <= y otherwise it is y

val encoding : t Data_encoding.t

A (partial) encoding of the datatype. If the encoded value is out of bounds, an exception may be raised. See Data_encoding.conv_with_guard.

val pp : Format.formatter -> t -> unit

A pretty-printer for values of type t.

val to_value : t -> int

to_value t is a projection to the OCaml representation of the bounded value t.

val of_value : int -> t option

of_value ocaml_value represents ocaml_value as a bounded value. Returns None if the value is outside of the bounds specified by min_value and max_value.

OCaml

Innovation. Community. Security.