| 
| template<typename T , typename U  = decltype(Interval<T>{}, ((T{} + T{}) / 2))>  | 
| constexpr auto  | playrho::GetCenter (const Interval< T > &v) noexcept(noexcept((v.GetMin()+v.GetMax())/2)) | 
|   | Gets the center of the given interval.  More...
  | 
|   | 
| 
template<typename T >  | 
| constexpr Interval< T >  | playrho::GetIntersection (Interval< T > a, const Interval< T > &b) noexcept | 
|   | Gets the intersecting interval of two given ranges. 
  | 
|   | 
| template<typename T , typename U  = decltype(Interval<T>{}, (T{} - T{}))>  | 
| constexpr auto  | playrho::GetSize (const Interval< T > &v) noexcept(noexcept(v.GetMax() - v.GetMin())) | 
|   | Gets the size of the given interval.  More...
  | 
|   | 
| 
template<typename T >  | 
| constexpr bool  | playrho::IsEntirelyAfter (const Interval< T > &a, const Interval< T > &b) | 
|   | Determines whether the first range is entirely after the second range. 
  | 
|   | 
| 
template<typename T >  | 
| constexpr bool  | playrho::IsEntirelyBefore (const Interval< T > &a, const Interval< T > &b) | 
|   | Determines whether the first range is entirely before the second range. 
  | 
|   | 
| 
template<typename T >  | 
| constexpr bool  | playrho::IsEntirelyEnclosing (const Interval< T > &a, const Interval< T > &b) | 
|   | Determines whether the first range entirely encloses the second. 
  | 
|   | 
| template<typename T , typename U  = decltype(Interval<T>{}, T{} < T{}, T{} >= T{})>  | 
| constexpr bool  | playrho::IsIntersecting (const Interval< T > &a, const Interval< T > &b) noexcept(noexcept(T{}< T{}) &&noexcept(T{} >=T{})) | 
|   | Checks whether two value ranges have any intersection/overlap at all.  More...
  | 
|   | 
| template<typename T >  | 
| constexpr bool  | playrho::operator!= (const Interval< T > &a, const Interval< T > &b) noexcept | 
|   | Inequality operator.  More...
  | 
|   | 
| template<typename T >  | 
| constexpr bool  | playrho::operator< (const Interval< T > &lhs, const Interval< T > &rhs) noexcept | 
|   | Less-than operator.  More...
  | 
|   | 
| 
template<typename T >  | 
| ::std::ostream &  | playrho::operator<< (::std::ostream &os, const Interval< T > &value) | 
|   | Output stream operator. 
  | 
|   | 
| template<typename T >  | 
| constexpr bool  | playrho::operator<= (const Interval< T > &lhs, const Interval< T > &rhs) noexcept | 
|   | Less-than or equal-to operator.  More...
  | 
|   | 
| template<typename T >  | 
| constexpr bool  | playrho::operator== (const Interval< T > &a, const Interval< T > &b) noexcept | 
|   | Equality operator.  More...
  | 
|   | 
| template<typename T >  | 
| constexpr bool  | playrho::operator> (const Interval< T > &lhs, const Interval< T > &rhs) noexcept | 
|   | Greater-than operator.  More...
  | 
|   | 
| template<typename T >  | 
| constexpr bool  | playrho::operator>= (const Interval< T > &lhs, const Interval< T > &rhs) noexcept | 
|   | Greater-than or equal-to operator.  More...
  | 
|   | 
Definition of the Interval class template and closely related code.