UInt

struct UInt

A 64-bit unsigned integer value type.

Inheritance BidirectionalIndexType, BitwiseOperationsType, CVarArgType, Comparable, Equatable, ForwardIndexType, Hashable, IntegerArithmeticType, IntegerLiteralConvertible, IntegerType, Printable, RandomAccessIndexType, Reflectable, Strideable, UnsignedIntegerType, _BidirectionalIndexType, _Comparable, _ForwardIndexType, _Incrementable, _IntegerArithmeticType, _IntegerType, _RandomAccessIndexType, _Strideable, _UnsignedIntegerType View Protocol Hierarchy →
Associated Types
Distance = Int

A type that can represent the number of steps between pairs of values.

Import import Swift

Initializers

init()

Create an instance initialized to zero.

Declaration

init()
init(_: Builtin.Word)

Declaration

init(_ v: Builtin.Word)
init(_: Double)

Construct an instance that approximates other.

Declaration

init(_ other: Double)
init(_: Float)

Construct an instance that approximates other.

Declaration

init(_ other: Float)
init(_: Float80)

Construct an instance that approximates other.

Declaration

init(_ other: Float80)
init(_: Int)

Declaration

init(_ v: Int)
init(_: Int8)

Declaration

init(_ v: Int8)
init(_: Int16)

Declaration

init(_ v: Int16)
init(_: Int32)

Declaration

init(_ v: Int32)
init(_: Int64)

Declaration

init(_ v: Int64)
init(_: UInt)

Create an instance initialized to value.

Declaration

init(_ value: UInt)
init(_: UInt8)

Declaration

init(_ v: UInt8)
init(_: UInt16)

Declaration

init(_ v: UInt16)
init(_: UInt32)

Declaration

init(_ v: UInt32)
init(_: UInt64)

Declaration

init(_ v: UInt64)
init(_builtinIntegerLiteral:)

Declaration

init(_builtinIntegerLiteral value: Builtin.Int2048)
init(bigEndian:)

Creates an integer from its big-endian representation, changing the byte order if necessary.

Declaration

init(bigEndian value: UInt)
init(bitPattern:)

Construct a UInt having the same memory representation as the Int bitPattern. No range or overflow checking occurs, and the resulting UInt may not have the same numeric value as bitPattern--it is only guaranteed to use the same pattern of bits.

Declaration

init(bitPattern: Int)
init(integerLiteral:)

Create an instance initialized to value.

Declaration

init(integerLiteral value: UInt)
init(littleEndian:)

Creates an integer from its little-endian representation, changing the byte order if necessary.

Declaration

init(littleEndian value: UInt)
init(truncatingBitPattern: Int64)

Construct a UInt having the same bitwise representation as the least significant bits of the provided bit pattern.

No range or overflow checking occurs.

Declaration

init(truncatingBitPattern: Int64)
init(truncatingBitPattern: UInt64)

Construct a UInt having the same bitwise representation as the least significant bits of the provided bit pattern.

No range or overflow checking occurs.

Declaration

init(truncatingBitPattern: UInt64)

Static Variables

static var allZeros: UInt

The empty bitset of type UInt.

Declaration

static var allZeros: UInt { get }
static var max: UInt

Declaration

static var max: UInt { get }
static var min: UInt

Declaration

static var min: UInt { get }

Instance Variables

var bigEndian: UInt

Returns the big-endian representation of the integer, changing the byte order if necessary.

Declaration

var bigEndian: UInt { get }
var byteSwapped: UInt

Returns the current integer with the byte order swapped.

Declaration

var byteSwapped: UInt { get }
var description: String

A textual representation of self.

Declaration

var description: String { get }
var hashValue: Int

The hash value.

Axiom: x == y implies x.hashValue == y.hashValue

Note: the hash value is not guaranteed to be stable across different invocations of the same program. Do not persist the hash value across program runs.

Declaration

var hashValue: Int { get }
var littleEndian: UInt

Returns the little-endian representation of the integer, changing the byte order if necessary.

Declaration

var littleEndian: UInt { get }
var value: Builtin.Int64

Declaration

var value: Builtin.Int64 { get set }

Static Methods

static func addWithOverflow(_:_:)

Add lhs and rhs, returning a result and a Bool that is true iff the operation caused an arithmetic overflow.

Declaration

static func addWithOverflow(lhs: UInt, _ rhs: UInt) -> (UInt, overflow: Bool)
static func divideWithOverflow(_:_:)

Divide lhs and rhs, returning a result and a Bool that is true iff the operation caused an arithmetic overflow.

Declaration

static func divideWithOverflow(lhs: UInt, _ rhs: UInt) -> (UInt, overflow: Bool)
static func multiplyWithOverflow(_:_:)

Multiply lhs and rhs, returning a result and a Bool that is true iff the operation caused an arithmetic overflow.

Declaration

static func multiplyWithOverflow(lhs: UInt, _ rhs: UInt) -> (UInt, overflow: Bool)
static func remainderWithOverflow(_:_:)

Divide lhs and rhs, returning the remainder and a Bool that is true iff the operation caused an arithmetic overflow.

Declaration

static func remainderWithOverflow(lhs: UInt, _ rhs: UInt) -> (UInt, overflow: Bool)
static func subtractWithOverflow(_:_:)

Subtract lhs and rhs, returning a result and a Bool that is true iff the operation caused an arithmetic overflow.

Declaration

static func subtractWithOverflow(lhs: UInt, _ rhs: UInt) -> (UInt, overflow: Bool)

Instance Methods

func advancedBy(_:)

Return self offset by n steps.

Returns: If n > 0, the result of applying successor to self n times. If n < 0, the result of applying predecessor to self -n times. Otherwise, self.

Complexity: O(1)

Declaration

func advancedBy(amount: Distance) -> UInt
func distanceTo(_:)

Return the minimum number of applications of successor or predecessor required to reach other from self.

Complexity: O(1).

Declaration

func distanceTo(other: UInt) -> Distance
func encode()

Transform self into a series of machine words that can be appropriately interpreted by C varargs

Declaration

func encode() -> [Word]
func getMirror()

Returns a mirror that reflects self.

Declaration

func getMirror() -> MirrorType
func predecessor()

Returns the previous consecutive value before self.

Requires: the previous value is representable.

Declaration

func predecessor() -> UInt
func successor()

Returns the next consecutive value after self.

Requires: the next value is representable.

Declaration

func successor() -> UInt
func toIntMax()

Explicitly convert to IntMax, trapping on overflow (except in -Ounchecked builds).

Declaration

func toIntMax() -> IntMax
func toUIntMax()

Represent this number using Swift's widest native unsigned integer type.

Declaration

func toUIntMax() -> UIntMax