val div : int32 -> int32 -> int32Integer division. Raise
Division_by_zeroif the second argument is zero. This division rounds the real quotient of its arguments towards zero, as specified forStdlib.(/).
val unsigned_div : int32 -> int32 -> int32Same as
div, except that arguments and result are interpreted as unsigned 32-bit integers.- since
- 4.08.0
val rem : int32 -> int32 -> int32Integer remainder. If
yis not zero, the result ofInt32.rem x ysatisfies the following property:x = Int32.add (Int32.mul (Int32.div x y) y) (Int32.rem x y). Ify = 0,Int32.rem x yraisesDivision_by_zero.
val unsigned_rem : int32 -> int32 -> int32Same as
rem, except that arguments and result are interpreted as unsigned 32-bit integers.- since
- 4.08.0
val shift_left : int32 -> int -> int32Int32.shift_left x yshiftsxto the left byybits. The result is unspecified ify < 0ory >= 32.
val shift_right : int32 -> int -> int32Int32.shift_right x yshiftsxto the right byybits. This is an arithmetic shift: the sign bit ofxis replicated and inserted in the vacated bits. The result is unspecified ify < 0ory >= 32.
val shift_right_logical : int32 -> int -> int32Int32.shift_right_logical x yshiftsxto the right byybits. This is a logical shift: zeroes are inserted in the vacated bits regardless of the sign ofx. The result is unspecified ify < 0ory >= 32.
val of_int : int -> int32Convert the given integer (type
int) to a 32-bit integer (typeint32). On 64-bit platforms, the argument is taken modulo 232.
val to_int : int32 -> intConvert the given 32-bit integer (type
int32) to an integer (typeint). On 32-bit platforms, the 32-bit integer is taken modulo 231, i.e. the high-order bit is lost during the conversion. On 64-bit platforms, the conversion is exact.
val unsigned_to_int : int32 -> int optionSame as
to_int, but interprets the argument as an unsigned integer. ReturnsNoneif the unsigned value of the argument cannot fit into anint.- since
- 4.08.0
val of_float : float -> int32Convert the given floating-point number to a 32-bit integer, discarding the fractional part (truncate towards 0). The result of the conversion is undefined if, after truncation, the number is outside the range [
Int32.min_int,Int32.max_int].
val of_string : string -> int32Convert the given string to a 32-bit integer. The string is read in decimal (by default, or if the string begins with
0u) or in hexadecimal, octal or binary if the string begins with0x,0oor0brespectively.The
0uprefix reads the input as an unsigned integer in the range[0, 2*Int32.max_int+1]. If the input exceedsInt32.max_intit is converted to the signed integerInt32.min_int + input - Int32.max_int - 1.The
_(underscore) character can appear anywhere in the string and is ignored. RaiseFailure "Int32.of_string"if the given string is not a valid representation of an integer, or if the integer represented exceeds the range of integers representable in typeint32.
val of_string_opt : string -> int32 optionSame as
of_string, but returnNoneinstead of raising.- since
- 4.05
val bits_of_float : float -> int32Return the internal representation of the given float according to the IEEE 754 floating-point 'single format' bit layout. Bit 31 of the result represents the sign of the float; bits 30 to 23 represent the (biased) exponent; bits 22 to 0 represent the mantissa.
val float_of_bits : int32 -> floatReturn the floating-point number whose internal representation, according to the IEEE 754 floating-point 'single format' bit layout, is the given
int32.
val compare : t -> t -> intThe comparison function for 32-bit integers, with the same specification as
Stdlib.compare. Along with the typet, this functioncompareallows the moduleInt32to be passed as argument to the functorsSet.MakeandMap.Make.