protocol IntegerArithmeticType
Inheritance 
Comparable, Equatable, _IntegerArithmeticType
View Protocol Hierarchy →


Import  import Swift 
Static Methods
Adds lhs
and rhs
, returning the result and a Bool
that is
true
iff the operation caused an arithmetic overflow.
Declaration
static func addWithOverflow(lhs: Self, _ rhs: Self) > (Self, overflow: Bool)
Declared In
_IntegerArithmeticType
Divides lhs
and rhs
, returning the result and a Bool
that is
true
iff the operation caused an arithmetic overflow.
Declaration
static func divideWithOverflow(lhs: Self, _ rhs: Self) > (Self, overflow: Bool)
Declared In
_IntegerArithmeticType
Multiplies lhs
and rhs
, returning the result and a Bool
that is
true
iff the operation caused an arithmetic overflow.
Declaration
static func multiplyWithOverflow(lhs: Self, _ rhs: Self) > (Self, overflow: Bool)
Declared In
_IntegerArithmeticType
Divides lhs
and rhs
, returning the remainder and a Bool
that is
true
iff the operation caused an arithmetic overflow.
Declaration
static func remainderWithOverflow(lhs: Self, _ rhs: Self) > (Self, overflow: Bool)
Declared In
_IntegerArithmeticType
Subtracts lhs
and rhs
, returning the result and a Bool
that is
true
iff the operation caused an arithmetic overflow.
Declaration
static func subtractWithOverflow(lhs: Self, _ rhs: Self) > (Self, overflow: Bool)
Declared In
_IntegerArithmeticType
Instance Methods
Divides lhs
and rhs
, returning the remainder and trapping in case of
arithmetic overflow (except in Ounchecked builds).
Declaration
func %(lhs: Self, rhs: Self) > Self
Multiplies lhs
and rhs
, returning the result and trapping in case of
arithmetic overflow (except in Ounchecked builds).
Declaration
func *(lhs: Self, rhs: Self) > Self
Adds lhs
and rhs
, returning the result and trapping in case of
arithmetic overflow (except in Ounchecked builds).
Declaration
func +(lhs: Self, rhs: Self) > Self
Divides lhs
and rhs
, returning the result and trapping in case of
arithmetic overflow (except in Ounchecked builds).
Declaration
func /(lhs: Self, rhs: Self) > Self
A strict total order
over instances of Self
.
Declaration
func <(lhs: Self, rhs: Self) > Bool
Declared In
Comparable
Returns true
if lhs
is equal to rhs
.
Equality implies substitutability. When x == y
, x
and
y
are interchangeable in any code that only depends on their
values.
Class instance identity as distinguished by tripleequals ===
is notably not part of an instance's value. Exposing other
nonvalue aspects of Equatable
types is discouraged, and any
that are exposed should be explicitly pointed out in
documentation.
Equality is an equivalence relation
x == x
istrue
x == y
impliesy == x
x == y
andy == z
impliesx == z
Inequality is the inverse of equality, i.e. !(x == y)
iff
x != y
.
Declaration
func ==(lhs: Self, rhs: Self) > Bool
Declared In
Equatable
Subtracts lhs
and rhs
, returning the result and trapping in case of
arithmetic overflow (except in Ounchecked builds).
Declaration
func (lhs: Self, rhs: Self) > Self
Explicitly convert to IntMax
, trapping on overflow (except in
Ounchecked builds).
Declaration
func toIntMax() > IntMax
The common requirements for types that support integer arithmetic.