模組 Stdlib.Nativeint

module Nativeint: Nativeint

val zero : nativeint

原生整數 0。

val one : nativeint

原生整數 1。

val minus_one : nativeint

原生整數 -1。

val neg : nativeint -> nativeint

一元負號。

val add : nativeint -> nativeint -> nativeint

加法。

val sub : nativeint -> nativeint -> nativeint

減法。

val mul : nativeint -> nativeint -> nativeint

乘法。

val div : nativeint -> nativeint -> nativeint

整數除法。此除法會將其參數的實際商數向零捨入,如同 (/) 所指定的。

val unsigned_div : nativeint -> nativeint -> nativeint

Nativeint.div 相同,差別在於參數和結果會被解釋為無符號原生整數。

val rem : nativeint -> nativeint -> nativeint

整數餘數。如果 y 不為零,則 Nativeint.rem x y 的結果滿足以下屬性:Nativeint.zero <= Nativeint.rem x y < Nativeint.abs yx = Nativeint.add (Nativeint.mul (Nativeint.div x y) y)
                      (Nativeint.rem x y)
。如果 y = 0,則 Nativeint.rem x y 會引發 Division_by_zero

val unsigned_rem : nativeint -> nativeint -> nativeint

Nativeint.rem 相同,差別在於參數和結果會被解釋為無符號原生整數。

val succ : nativeint -> nativeint

後繼者。Nativeint.succ xNativeint.add x Nativeint.one

val pred : nativeint -> nativeint

前導者。Nativeint.pred xNativeint.sub x Nativeint.one

val abs : nativeint -> nativeint

abs xx 的絕對值。在 min_int 上,其值為 min_int 本身,因此保持負數。

val size : int

原生整數的大小(以位元為單位)。在 32 位元平台上,此值等於 32;在 64 位元平台上,此值等於 64

val max_int : nativeint

最大的可表示原生整數,在 32 位元平台上為 231 - 1,在 64 位元平台上為 263 - 1。

val min_int : nativeint

最小的可表示原生整數,在 32 位元平台上為 -231,在 64 位元平台上為 -263

val logand : nativeint -> nativeint -> nativeint

位元邏輯 AND。

val logor : nativeint -> nativeint -> nativeint

位元邏輯 OR。

val logxor : nativeint -> nativeint -> nativeint

位元邏輯 XOR (互斥或)。

val lognot : nativeint -> nativeint

位元邏輯 NOT (反相)。

val shift_left : nativeint -> int -> nativeint

Nativeint.shift_left x yx 向左移動 y 個位元。如果 y < 0y >= bitsize,則結果未指定,其中 bitsize 在 32 位元平台上為 32,在 64 位元平台上為 64

val shift_right : nativeint -> int -> nativeint

Nativeint.shift_right x yx 向右移動 y 個位元。這是一個算術移位:x 的符號位元會被複製並插入到空出的位元中。如果 y < 0y >= bitsize,則結果未指定。

val shift_right_logical : nativeint -> int -> nativeint

Nativeint.shift_right_logical x yx 向右移動 y 個位元。這是一個邏輯移位:無論 x 的符號為何,都會在空出的位元中插入零。如果 y < 0y >= bitsize,則結果未指定。

val of_int : int -> nativeint

將給定的整數(類型為 int)轉換為原生整數(類型為 nativeint)。

val to_int : nativeint -> int

將給定的原生整數(類型為 nativeint)轉換為整數(類型為 int)。轉換期間會遺失高位元。

val unsigned_to_int : nativeint -> int option

Nativeint.to_int 相同,但將參數解釋為無符號整數。如果參數的無符號值無法放入 int 中,則傳回 None

val of_float : float -> nativeint

將給定的浮點數轉換為原生整數,捨棄小數部分(向 0 截斷)。如果截斷的浮點數超出範圍 [Nativeint.min_int, Nativeint.max_int],則不會引發例外,且會傳回未指定的、平台相關的整數。

val to_float : nativeint -> float

將給定的原生整數轉換為浮點數。

val of_int32 : int32 -> nativeint

將給定的 32 位元整數(類型為 int32)轉換為原生整數。

val to_int32 : nativeint -> int32

將給定的原生整數轉換為 32 位元整數(類型為 int32)。在 64 位元平台上,會將 64 位元原生整數取模 232,即會遺失高 32 位元。在 32 位元平台上,轉換是精確的。

val of_string : string -> nativeint

將給定的字串轉換為原生整數。字串會以十進位讀取(預設,或如果字串以 0u 開頭),如果字串分別以 0x0o0b 開頭,則以十六進位、八進位或二進位讀取。

0u 前綴會將輸入讀取為範圍 [0, 2*Nativeint.max_int+1] 中的無符號整數。如果輸入超出 Nativeint.max_int,則會轉換為有符號整數 Int64.min_int + input - Nativeint.max_int - 1

val of_string_opt : string -> nativeint option

of_string 相同,但會傳回 None 而不是引發。

val to_string : nativeint -> string

傳回其參數的字串表示法,以十進位表示。

type t = nativeint 

原生整數類型的別名。

val compare : t -> t -> int

原生整數的比較函式,與 compare 具有相同的規格。連同類型 t,此函式 compare 允許將模組 Nativeint 作為參數傳遞給函子 Set.MakeMap.Make

val unsigned_compare : t -> t -> int

Nativeint.compare 相同,差別在於參數會被解釋為無符號原生整數。

val equal : t -> t -> bool

原生整數的相等函式。

val min : t -> t -> t

傳回兩個參數中較小的一個。

val max : t -> t -> t

傳回兩個參數中較大的一個。

val seeded_hash : int -> t -> int

原生整數的已加種子雜湊函式,與 Hashtbl.seeded_hash 具有相同的輸出值。此函式允許將此模組作為參數傳遞給函子 Hashtbl.MakeSeeded

val hash : t -> int

原生整數的未加種子雜湊函式,與 Hashtbl.hash 具有相同的輸出值。此函式允許將此模組作為參數傳遞給函子 Hashtbl.Make