Public Types | Private Types | Private Member Functions | List of all members
boost::make_signed< T > Struct Template Reference

#include <make_signed.hpp>

Public Types

typedef conditional< is_volatile< T >::value, typename add_volatile< const_base_integer_type >::type, const_base_integer_type >::type type
 

Private Types

typedef conditional< (::boost::is_signed< T >::value &&::boost::is_integral< T >::value &&!::boost::is_same< t_no_cv, char >::value &&!::boost::is_same< t_no_cv, wchar_t >::value &&!::boost::is_same< t_no_cv, bool >::value), T, typename conditional< (::boost::is_integral< T >::value &&!::boost::is_same< t_no_cv, char >::value &&!::boost::is_same< t_no_cv, wchar_t >::value &&!::boost::is_same< t_no_cv, bool >::value), typename conditional< is_same< t_no_cv, unsigned char >::value, signed char, typename conditional< is_same< t_no_cv, unsigned short >::value, signed short, typename conditional< is_same< t_no_cv, unsigned int >::value, int, typename conditional< is_same< t_no_cv, unsigned long >::value, long, long >::type >::type >::type >::type, typename conditional< sizeof(t_no_cv)==sizeof(unsigned char), signed char, typename conditional< sizeof(t_no_cv)==sizeof(unsigned short), signed short, typename conditional< sizeof(t_no_cv)==sizeof(unsigned int), int, typename conditional< sizeof(t_no_cv)==sizeof(unsigned long), long, long >::type >::type >::type >::type >::type >::type base_integer_type
 
typedef conditional< is_const< T >::value, typename add_const< base_integer_type >::type, base_integer_type >::type const_base_integer_type
 
typedef remove_cv< T >::type t_no_cv
 

Private Member Functions

 BOOST_STATIC_ASSERT_MSG ((::boost::is_integral< T >::value||::boost::is_enum< T >::value),"The template argument to make_signed must be an integer or enum type.")
 
 BOOST_STATIC_ASSERT_MSG (!(::boost::is_same< typename remove_cv< T >::type, bool >::value),"The template argument to make_signed must not be the type bool.")
 

Detailed Description

template<class T>
struct boost::make_signed< T >

Definition at line 28 of file make_signed.hpp.

Member Typedef Documentation

template<class T >
typedef conditional< (::boost::is_signed<T>::value && ::boost::is_integral<T>::value && ! ::boost::is_same<t_no_cv, char>::value && ! ::boost::is_same<t_no_cv, wchar_t>::value && ! ::boost::is_same<t_no_cv, bool>::value), T, typename conditional< (::boost::is_integral<T>::value && ! ::boost::is_same<t_no_cv, char>::value && ! ::boost::is_same<t_no_cv, wchar_t>::value && ! ::boost::is_same<t_no_cv, bool>::value), typename conditional< is_same<t_no_cv, unsigned char>::value, signed char, typename conditional< is_same<t_no_cv, unsigned short>::value, signed short, typename conditional< is_same<t_no_cv, unsigned int>::value, int, typename conditional< is_same<t_no_cv, unsigned long>::value, long, long >::type >::type >::type >::type, typename conditional< sizeof(t_no_cv) == sizeof(unsigned char), signed char, typename conditional< sizeof(t_no_cv) == sizeof(unsigned short), signed short, typename conditional< sizeof(t_no_cv) == sizeof(unsigned int), int, typename conditional< sizeof(t_no_cv) == sizeof(unsigned long), long, long >::type >::type >::type >::type >::type >::type boost::make_signed< T >::base_integer_type
private

Definition at line 111 of file make_signed.hpp.

Definition at line 118 of file make_signed.hpp.

template<class T >
typedef remove_cv<T>::type boost::make_signed< T >::t_no_cv
private

Definition at line 34 of file make_signed.hpp.

Definition at line 125 of file make_signed.hpp.

Member Function Documentation

template<class T >
boost::make_signed< T >::BOOST_STATIC_ASSERT_MSG ( (::boost::is_integral< T >::value||::boost::is_enum< T >::value ,
"The template argument to make_signed< T > must be an integer or enum type."   
)
private
template<class T >
boost::make_signed< T >::BOOST_STATIC_ASSERT_MSG ( ::boost::is_same< typename remove_cv< T >::type, bool >::value,
"The template argument to make_signed< T > must not be the type bool."   
)
private

The documentation for this struct was generated from the following file:


librealsense2
Author(s): Sergey Dorodnicov , Doron Hirshberg , Mark Horn , Reagan Lopez , Itay Carpis
autogenerated on Mon May 3 2021 02:50:33