Unary plus operators
Synopses
Declared in <mp‐units/utility/constrained.h>
Applies unary + to the wrapped value
[[nodiscard]]
constexpr
constrained<decltype(+std::declval<T>()), ErrorPolicy>
operator+(constrained const& x);
Adds a safe_int to an integral scalar, checking for overflow.
[[nodiscard]]
constexpr
safe_int</* implementation-defined */, ErrorPolicy>
operator+(
U lhs,
safe_int rhs);
Adds a safe_int to a floating‐point value.
[[nodiscard]]
constexpr
auto
operator+(
U lhs,
safe_int rhs)
requires requires { lhs + static_cast<U>(rhs.value_); };
Adds an integral scalar to a safe_int, checking for overflow.
[[nodiscard]]
constexpr
safe_int</* implementation-defined */, ErrorPolicy>
operator+(
safe_int lhs,
U rhs);
Adds a floating‐point value to a safe_int.
[[nodiscard]]
constexpr
auto
operator+(
safe_int lhs,
U rhs)
requires requires { static_cast<U>(lhs.value_) + rhs; };
Computes the sum of lhs and rhs.
[[nodiscard]]
constexpr
safe_int</* implementation-defined */, ErrorPolicy>
operator+(
safe_int lhs,
safe_int rhs);
Adds a safe_int to a constrained value
[[nodiscard]]
constexpr
safe_int</* implementation-defined */, ErrorPolicy>
operator+(
safe_int lhs,
constrained<U, CP> rhs);
Adds a non‐integral constrained value to a safe_int
[[nodiscard]]
constexpr
constrained<decltype(std::declval<T>() + std::declval<U>()), CP>
operator+(
safe_int lhs,
constrained<U, CP> const& rhs);
Adds a constrained value to a safe_int
[[nodiscard]]
constexpr
safe_int</* implementation-defined */, ErrorPolicy>
operator+(
constrained<U, CP> lhs,
safe_int rhs);
Adds a safe_int to a non‐integral constrained value
[[nodiscard]]
constexpr
constrained<decltype(std::declval<U>() + std::declval<T>()), CP>
operator+(
constrained<U, CP> const& lhs,
safe_int rhs);
Return Value
-
the wrapped result of applying unary
+tox -
the sum, as a
safe_intof the promoted result type; triggersErrorPolicy::on_overflowon overflow -
the sum of
lhsand the wrapped value -
the sum of the wrapped value and
rhs -
the sum of
lhsandrhs; triggersErrorPolicy::on_overflowon overflow -
the wrapped sum of the underlying values
|
Note
|
The return value should not be discarded. |
Template Parameters
Name |
Description |
U |
the integral scalar type |
Parameters
Name |
Description |
x |
the wrapped value to apply unary |
lhs |
the integral scalar operand |
rhs |
the |
Created with MrDocs