Skip to main content

Module num

Module num 

Source
Expand description

Custom-sized numeric types

Implementation of various integer types with custom bit dimension. These include:

  • large signed and unsigned integers, named gib int types (256, 512, 1024-bit)
  • custom sub-8 bit unsigned integers, named *small int types (5-, 6-, 7-bit)
  • 24-bit signed integer.

The functions here are designed to be fast.

Modules§

error
hex
Hex encoding and decoding
posit

Structs§

i256
Large integer type
i512
Large integer type
i1024
Large integer type
u1
1-bit unsigned integer in the range 0..=1. It can be used instead of bool when 1-bit numeric (and not boolean) arithmetic is required
u2
2-bit unsigned integer in the range 0..=3
u3
3-bit unsigned integer in the range 0..=7
u4
4-bit unsigned integer in the range 0..=15
u5
5-bit unsigned integer in the range 0..=31
u6
6-bit unsigned integer in the range 0..=63
u7
7-bit unsigned integer in the range 0..=127
u10
10-bit unsigned integer in the range 0..=1023
u12
12-bit unsigned integer in the range 0..=4095
u14
14-bit unsigned integer in the range 0..=16383
u20
20-bit unsigned integer in the range 0..=1_048_575
u24
24-bit unsigned integer in the range 0..=16_777_215
u40
40-bit unsigned integer in the range 0..2^40
u48
48-bit unsigned integer in the range 0..2^48
u56
56-bit unsigned integer in the range 0..2^56
u256
Large integer type
u512
Large integer type
u1024
Large integer type