xo-ratio: mark several methods noexcept
This commit is contained in:
parent
978af419b3
commit
787e19ae40
1 changed files with 5 additions and 5 deletions
|
|
@ -147,10 +147,10 @@ namespace xo {
|
||||||
return compare_aux(x, y);
|
return compare_aux(x, y);
|
||||||
}
|
}
|
||||||
|
|
||||||
constexpr Int num() const { return num_; }
|
constexpr Int num() const noexcept { return num_; }
|
||||||
constexpr Int den() const { return den_; }
|
constexpr Int den() const noexcept { return den_; }
|
||||||
|
|
||||||
constexpr bool is_integer() const { return den_ == 1 || den_ == -1; }
|
constexpr bool is_integer() const noexcept { return den_ == 1 || den_ == -1; }
|
||||||
|
|
||||||
constexpr ratio negate() const { return ratio(-num_, den_); }
|
constexpr ratio negate() const { return ratio(-num_, den_); }
|
||||||
constexpr ratio reciprocal() const { return ratio(den_, num_); }
|
constexpr ratio reciprocal() const { return ratio(den_, num_); }
|
||||||
|
|
@ -200,7 +200,7 @@ namespace xo {
|
||||||
|
|
||||||
/** @brief convert to representation using different integer types **/
|
/** @brief convert to representation using different integer types **/
|
||||||
template <typename Ratio2>
|
template <typename Ratio2>
|
||||||
constexpr operator Ratio2 () const requires ratio_concept<Ratio2> {
|
constexpr operator Ratio2 () const noexcept requires ratio_concept<Ratio2> {
|
||||||
return Ratio2(num_, den_);
|
return Ratio2(num_, den_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -209,7 +209,7 @@ namespace xo {
|
||||||
*
|
*
|
||||||
* @pre @p x, @p y have non-negative denominator
|
* @pre @p x, @p y have non-negative denominator
|
||||||
**/
|
**/
|
||||||
static constexpr auto compare_aux(ratio x, ratio y) {
|
static constexpr auto compare_aux(ratio x, ratio y) noexcept {
|
||||||
/* control here: b>=0, d>=0 */
|
/* control here: b>=0, d>=0 */
|
||||||
|
|
||||||
/* (a/b) <=> (c/d)
|
/* (a/b) <=> (c/d)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue