Nat32

Utility functions on 32-bit unsigned integers

type Nat32 = Prim.Types.Nat32

public let maximumValue : Nat32

public let toNat : Nat32 -> Nat

public let fromNat : Nat -> Nat32

public func fromNat16(x : Nat16) : Nat32

public func toNat16(x : Nat32) : Nat16

public func fromNat64(x : Nat64) : Nat32

public func toNat64(x : Nat32) : Nat64

public let fromIntWrap : Int -> Nat32

public func toText(x : Nat32) : Text

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

public func bitnot(x : Nat32) : Nat32

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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