CAPD DynSys Library  5.2.0
capd::TypeTraits< ::capd::intervals::Interval< T, RT > > Class Template Reference

Specialization of TypeTraits for intervals. More...

#include <capd/intervals/Interval.h>

Public Types

typedef T Real
 
typedef RT RoundingType
 
typedef ::capd::intervals::Interval< T, RT > IntervalType
 

Static Public Member Functions

static const IntervalTypezero ()
 
static const IntervalTypeone ()
 
static int numberOfDigits ()
 
static T epsilon () noexcept
 Machine epsilon (the difference between 1 and the least value greater than 1 that is representable). More...
 
template<typename S >
static IntervalType convert (const S &obj)
 
static IntervalType convert (const T &obj)
 
static constexpr IntervalType abs (const IntervalType &ix) noexcept
 an absolute value More...
 
static constexpr IntervalType max (const IntervalType &ix, const IntervalType &iy) noexcept
 maximum More...
 
static constexpr IntervalType min (const IntervalType &ix, const IntervalType &iy)
 minimum More...
 
static bool isSingular (const IntervalType &x)
 

Static Public Attributes

static const bool isInterval = true
 this flag is true for all interval types More...
 

Detailed Description

template<typename T, typename RT>
class capd::TypeTraits< ::capd::intervals::Interval< T, RT > >

Specialization of TypeTraits for intervals.

Member Typedef Documentation

◆ IntervalType

template<typename T , typename RT >
typedef ::capd::intervals::Interval<T,RT> capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::IntervalType

◆ Real

template<typename T , typename RT >
typedef T capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::Real

◆ RoundingType

template<typename T , typename RT >
typedef RT capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::RoundingType

Member Function Documentation

◆ abs()

template<typename T , typename RT >
static constexpr IntervalType capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::abs ( const IntervalType ix)
inlinestaticconstexprnoexcept

an absolute value

◆ convert() [1/2]

template<typename T , typename RT >
template<typename S >
static IntervalType capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::convert ( const S &  obj)
inlinestatic

◆ convert() [2/2]

template<typename T , typename RT >
static IntervalType capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::convert ( const T &  obj)
inlinestatic

◆ epsilon()

template<typename T , typename RT >
static T capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::epsilon ( )
inlinestaticnoexcept

Machine epsilon (the difference between 1 and the least value greater than 1 that is representable).

◆ isSingular()

template<typename T , typename RT >
static bool capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::isSingular ( const IntervalType x)
inlinestatic

◆ max()

template<typename T , typename RT >
static constexpr IntervalType capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::max ( const IntervalType ix,
const IntervalType iy 
)
inlinestaticconstexprnoexcept

maximum

◆ min()

template<typename T , typename RT >
static constexpr IntervalType capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::min ( const IntervalType ix,
const IntervalType iy 
)
inlinestaticconstexpr

minimum

◆ numberOfDigits()

template<typename T , typename RT >
static int capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::numberOfDigits ( )
inlinestatic

◆ one()

template<typename T , typename RT >
static const IntervalType& capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::one ( )
inlinestatic

◆ zero()

template<typename T , typename RT >
static const IntervalType& capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::zero ( )
inlinestatic

Member Data Documentation

◆ isInterval

template<typename T , typename RT >
const bool capd::TypeTraits< ::capd::intervals::Interval< T, RT > >::isInterval = true
static

this flag is true for all interval types