package tezos-protocol-alpha
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=43723d096307603703a1a89ed1b2eb202b365f5e7824b96b0cbf813b343a6cf7
sha512=b2a637f2e965000d3d49ad85277ca24d6cb07a1a7cf2bc69d296d8b03ad78c3eaa8e21e94b9162e62c2e11649cd03bc845b2a3dafe623b91065df69d47dc8e4f
doc/tezos-protocol-alpha.raw/Tezos_raw_protocol_alpha/Script_int/index.html
Module Tezos_raw_protocol_alpha.Script_int
Source
The types for arbitrary precision integers in Michelson. The type variable 't
is always n
or z
, n num
and z num
are incompatible.
This is internally a Z.t
. This module mostly adds signedness preservation guarantees.
num
is made algebraic in order to distinguish it from the other type parameters of Script_typed_ir.ty
.
Flag for natural numbers.
Flag for relative numbers.
Conversion from an OCaml string
. Returns None
in case of an invalid notation. Supports +
and -
sign modifiers, and 0x
, 0o
and 0b
base modifiers.
Conversion from a Zarith integer (Z.t
).
Conversion to a Zarith integer (Z.t
).
Euclidean division of a natural. ediv_n n d
returns None
if divisor is zero, or Some (q, r)
where n = d * q + r
and [0 <= r < d]
otherwise.
Sign agnostic addition. Use add_n
when working with naturals to preserve the sign.
Sign agnostic subtraction. Use sub_n
when working with naturals to preserve the sign.
Sign agnostic multiplication. Use mul_n
when working with a natural to preserve the sign.
Sign agnostic euclidean division. ediv n d
returns None
if divisor is zero, or Some (q, r)
where n = d * q + r
and [0 <= r < |d|]
otherwise. Use ediv_n
when working with a natural to preserve the sign.
Reverses each bit in the representation of the number. Also applies to the sign.
Shifts the natural to the left of a number of bits between 0 and 256. Returns None
if the amount is too high.
Shifts the natural to the right of a number of bits between 0 and 256. Returns None
if the amount is too high.
Shifts the number to the left of a number of bits between 0 and 256. Returns None
if the amount is too high.
Shifts the number to the right of a number of bits between 0 and 256. Returns None
if the amount is too high.
Naturals are encoded using Data_encoding.n
Integers are encoded using Data_encoding.z