|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
-
-
-
-
-
-
-
-
-
-
-
-
- #ifndef RANGES_V3_UTILITY_INFINITY_HPP
- #define RANGES_V3_UTILITY_INFINITY_HPP
-
- #include <concepts/concepts.hpp>
-
- #include <range/v3/range_fwd.hpp>
- RANGES_DEPRECATED_HEADER(
- "This header is deprecated and will be removed from a future version of range-v3.")
-
- namespace ranges
- {
-
- struct infinity
- {
- friend constexpr bool operator==(infinity, infinity)
- {
- return true;
- }
- friend constexpr bool operator!=(infinity, infinity)
- {
- return false;
- }
- template<typename Integer>
- friend constexpr auto operator==(Integer, infinity) noexcept
- -> CPP_broken_friend_ret(bool)(
- requires integral<Integer>)
- {
- return false;
- }
- template<typename Integer>
- friend constexpr auto operator==(infinity, Integer) noexcept
- -> CPP_broken_friend_ret(bool)(
- requires integral<Integer>)
- {
- return false;
- }
- template<typename Integer>
- friend constexpr auto operator!=(Integer, infinity) noexcept
- -> CPP_broken_friend_ret(bool)(
- requires integral<Integer>)
- {
- return true;
- }
- template<typename Integer>
- friend constexpr auto operator!=(infinity, Integer) noexcept
- -> CPP_broken_friend_ret(bool)(
- requires integral<Integer>)
- {
- return true;
- }
- };
-
- }
-
- #endif
|