fixed_point: Mark std::swap and move constructor as noexcept

These shouldn't throw and can influence how some standard algorithms
will work.
This commit is contained in:
Lioncash 2022-10-18 13:13:26 -04:00
parent 2cc9d94060
commit 0cfd90004b

View File

@ -269,7 +269,7 @@ public:
public: // constructors public: // constructors
FixedPoint() = default; FixedPoint() = default;
FixedPoint(const FixedPoint&) = default; FixedPoint(const FixedPoint&) = default;
FixedPoint(FixedPoint&&) = default; FixedPoint(FixedPoint&&) noexcept = default;
FixedPoint& operator=(const FixedPoint&) = default; FixedPoint& operator=(const FixedPoint&) = default;
template <IsArithmetic Number> template <IsArithmetic Number>
@ -454,7 +454,7 @@ public: // conversion to basic types
} }
public: public:
constexpr void swap(FixedPoint& rhs) { constexpr void swap(FixedPoint& rhs) noexcept {
using std::swap; using std::swap;
swap(data_, rhs.data_); swap(data_, rhs.data_);
} }