protocol
IntegerArithmeticType
Inheritance |
Comparable, Equatable, _IntegerArithmeticType
View Protocol Hierarchy →
|
---|---|
Import |
|
Static Methods
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
:
Self
,
_
rhs
:
Self
) -
>
(
Self
,
overflow
:
Bool
)
Declared In
_IntegerArithmeticType
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
:
Self
,
_
rhs
:
Self
) -
>
(
Self
,
overflow
:
Bool
)
Declared In
_IntegerArithmeticType
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
:
Self
,
_
rhs
:
Self
) -
>
(
Self
,
overflow
:
Bool
)
Declared In
_IntegerArithmeticType
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
:
Self
,
_
rhs
:
Self
) -
>
(
Self
,
overflow
:
Bool
)
Declared In
_IntegerArithmeticType
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
:
Self
,
_
rhs
:
Self
) -
>
(
Self
,
overflow
:
Bool
)
Declared In
_IntegerArithmeticType
5 inherited items hidden. (Show all)
Instance Methods
Divide lhs
and rhs
, returning the remainder and trapping in case of
arithmetic overflow (except in -Ounchecked builds).
Declaration
func
%(
lhs
:
Self
,
rhs
:
Self
) -
>
Self
Multiply lhs
and rhs
, returning a result and trapping in case of
arithmetic overflow (except in -Ounchecked builds).
Declaration
func
*(
lhs
:
Self
,
rhs
:
Self
) -
>
Self
Add lhs
and rhs
, returning a result and trapping in case of
arithmetic overflow (except in -Ounchecked builds).
Declaration
func
+(
lhs
:
Self
,
rhs
:
Self
) -
>
Self
Divide lhs
and rhs
, returning a 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
Return 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 triple-equals ===
is notably not part of an instance's value. Exposing other
non-value 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
Subtract lhs
and rhs
, returning a 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
5 inherited items hidden. (Show all)
The common requirements for types that support integer arithmetic.