package integers
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=f608ce98caf41ddb4eea90e8673bb8ff35acb07ef951bc0bf75b5989ef9b36b8
md5=24d629966763b4956edfb7e64d6c5427
doc/README.html
ocaml-integers
The ocaml-integers library provides a number of 8-, 16-, 32- and 64-bit signed and unsigned integer types, together with aliases such as long and size_t whose sizes depend on the host platform.
Features
The interfaces follow the pattern of the signatures of the
Int32,Int64, andNativeintmodules in the OCaml standard library.The behaviour also follows the standard library; for example, conversions such as
of_inttruncate, and operations are "modulo" in general:# Unsigned.UInt8.(pred zero);; - : Unsigned.UInt8.t = <uint8 255>Top-level printers for each type are included
# Unsigned.UInt32.[of_int 103; one; of_string "1000"];; - : Unsigned.UInt32.t list = [<uint32 103>; <uint32 1>; <uint32 1000>]Infix operators are available:
# Unsigned.UInt32.(Infix.(one + one));; - : Unsigned.UInt32.t = <uint32 2>Polymorphic operations such as comparison behave correctly:
# open Unsigned.UInt32 # zero < one;; - : bool = true # max_int < zero;; - : bool = falseIntegers 32 bits and above are boxed; integers below 32 bits are unboxed.
# Obj.(tag (repr Unsigned.UInt32.zero));; - : int = 255 # Obj.(tag (repr Unsigned.UInt16.zero));; - : int = 1000
Using integers with js_of_ocaml
The integers_stubs_js package provides JavaScript stubs that make it possible to use this library with js_of_ocaml