package checked_oint
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page
An OCaml library for checked integer arithmetic
Install
dune-project
Dependency
Authors
Maintainers
Sources
checked_oint-2.0.1.tar.gz
md5=a2abe576da39a51f22fec77b4fb7293f
sha512=5c05ff50078cd3ff68d2a69d34dcad7ccb02f6d06efdedd91d7f24c676e24bf3d4191418379f6c29f3a3a8f69bc1ecc9632a63cb134bccd7b50ebe2bc6492eb0
doc/CHANGELOG.html
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
unreleased
2.0.1 - 2026-06-11
Fixed
- Zero-extend
u32integers inU64.of_value,I64.of_value,U128.of_value, andI128.of_valueinstead of sign-extending them. - Truncate the results of
I8.shift_leftandI16.shift_leftto 8 and 16 bits, respectively. - Reject negative integers in
U32.of_stringandU64.of_string. - Avoid undefined behavior when reassembling 128-bit integers in the C stubs.
2.0.0 - 2026-06-10
Added
S.tyas the type representation ofS.t.
Changed
- Rework
Int_ty.tas a GADT indexed by the corresponding OCaml type; the newInt_ty.equatedecides type equality. - Replace the
generictype withvalue, which carries anInt_ty.twitness; rename theS.of_genericfunction family accordingly. - The
opsfunction is now typed:ops : 'a Int_ty.t -> (module S with type t = 'a).
Removed
singletonandpair/pair_exn, which materialized a fresh first-class module on every call.- The
signedness,bitness, andint_tytypes, together withS.int_ty.
1.0.1 - 2025-11-30
Changed
- Only require
bisect_ppxandalcotestfor testing, not for production builds.
1.0.0 - 2025-05-15
Changed
- Relicense the project under the Unlicense license.
0.6.0 - 2025-04-12
Changed
- Put all the integer type shortcuts into the new
Int_tymodule. - The
generic_int_tyfunction is now available asInt_ty.(of_generic : generic -> t).
0.5.0 - 2025-04-07
Added
S.of_genericandS.of_generic_exnto convert between any two integer types.
0.4.1 - 2025-01-03
Changed
Use manual interfacing with C instead of
ocaml-ctypes.- This fixes compilation on Fedora Linux, openSUSE, FreeBSD, and Oracle Linux (issue https://github.com/hirrolot/checked_oint/issues/1).
Fixed
- Disable C assertions (
-DNDEBUG) under thereleaseprofile.
0.4.0 - 2024-11-24
Added
- The
pairfunction as anoption-returning counterpart ofpair_exn.
0.3.0 - 2024-11-09
Added
Integer type shortcuts:
u8_int_ty,u16_int_ty,u32_int_ty,u64_int_ty,u128_int_tyi8_int_ty,i16_int_ty,i32_int_ty,i64_int_ty,i128_int_ty
0.2.2 - 2024-11-01
Fixed
- Detect out-of-range letters during 128-bit integer parsing.
0.2.1 - 2024-10-16
Fixed
- Support binary, octal, and hexadecimal
of_stringformats for 128-bit integers.
0.2.0 - 2024-06-14
Added
- The
is_zero,is_one,is_all_onespredicates ongenericintegers.
Changed
- Rename
S.tytoS.int_ty(in accordance withgeneric_int_ty).
0.1.2 - 2024-05-15
Added
S.of_intandS.of_stringwhich returnoptioninstead of raising an exception.
Fixed
- Specify a required version of
alcotest.
0.1.1 - 2024-05-05
Added
S.tyfor getting a type representation (int_ty).
Fixed
- Specify required versions of
ocamlandctypes-foreignindune-project.
0.1.0 - 2024-05-01
Added
- This library.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page