Nat64

Utility functions on 64-bit unsigned integers

type Nat64 = Prim.Types.Nat64

public let maximumValue : Nat64

public let toNat : Nat64 -> Nat

public let fromNat : Nat -> Nat64

public func fromNat32(x : Nat32) : Nat64

public func toNat32(x : Nat64) : Nat32

public let fromIntWrap : Int -> Nat64

public func toText(x : Nat64) : Text

public func min(x : Nat64, y : Nat64) : Nat64

public func max(x : Nat64, y : Nat64) : Nat64

public func equal(x : Nat64, y : Nat64) : Bool

public func notEqual(x : Nat64, y : Nat64) : Bool

public func less(x : Nat64, y : Nat64) : Bool

public func lessOrEqual(x : Nat64, y : Nat64) : Bool

public func greater(x : Nat64, y : Nat64) : Bool

public func greaterOrEqual(x : Nat64, y : Nat64) : Bool

public func compare(x : Nat64, y : Nat64) : {#less; #equal; #greater}

public func add(x : Nat64, y : Nat64) : Nat64

public func sub(x : Nat64, y : Nat64) : Nat64

public func mul(x : Nat64, y : Nat64) : Nat64

public func div(x : Nat64, y : Nat64) : Nat64

public func rem(x : Nat64, y : Nat64) : Nat64

public func pow(x : Nat64, y : Nat64) : Nat64

public func bitnot(x : Nat64) : Nat64

public func bitand(x : Nat64, y : Nat64) : Nat64

public func bitor(x : Nat64, y : Nat64) : Nat64

public func bitxor(x : Nat64, y : Nat64) : Nat64

public func bitshiftLeft(x : Nat64, y : Nat64) : Nat64

public func bitshiftRight(x : Nat64, y : Nat64) : Nat64

public func bitrotLeft(x : Nat64, y : Nat64) : Nat64

public func bitrotRight(x : Nat64, y : Nat64) : Nat64

public func bittest(x : Nat64, p : Nat) : Bool

public func bitset(x : Nat64, p : Nat) : Nat64

public func bitclear(x : Nat64, p : Nat) : Nat64

public func bitflip(x : Nat64, p : Nat) : Nat64

public let bitcountNonZero : (x : Nat64) -> Nat64

public let bitcountLeadingZero : (x : Nat64) -> Nat64

public let bitcountTrailingZero : (x : Nat64) -> Nat64

public func addWrap(x : Nat64, y : Nat64) : Nat64

public func subWrap(x : Nat64, y : Nat64) : Nat64

public func mulWrap(x : Nat64, y : Nat64) : Nat64

public func powWrap(x : Nat64, y : Nat64) : Nat64