7 #ifndef _QITYPE_DETAIL_TYPEINT_HXX_
8 #define _QITYPE_DETAIL_TYPEINT_HXX_
9 #include <boost/type_traits/is_signed.hpp>
23 return *(T*)ImplType::Access::ptrFromStorage(&value);
28 *(T*)ImplType::Access::ptrFromStorage(storage) = (T)value;
31 unsigned int size()
override
38 return boost::is_signed<T>::value;
51 return *(T*)ImplType::Access::ptrFromStorage(&value);
56 *(T*)ImplType::Access::ptrFromStorage(storage) = (T)(value != 0);
59 unsigned int size()
override
84 double get(
void* value)
override
86 return *(T*)ImplType::Access::ptrFromStorage(&value);
89 void set(
void** storage,
double value)
override
91 *(T*)ImplType::Access::ptrFromStorage(storage) = (T)value;
94 unsigned int size()
override
104 #endif // _QITYPE_DETAIL_TYPEINT_HXX_
detail::TypeImplMethodsBySize_t< T > ImplType
detail::TypeImplMethodsBySize_t< T > ImplType
void set(void **storage, int64_t value) override
Set the value of the integer.
unsigned int size() override
Return the size in bytes.
bool isSigned() override
Return true if the integer is signed.
typename TypeImplMethodsBySize< T >::type TypeImplMethodsBySize_t
unsigned int size() override
Return the size in bytes.
detail::TypeImplMethodsBySize_t< T > ImplType
unsigned int size() override
Return the size in bytes.
bool isSigned() override
Return true if the integer is signed.
_QI_BOUNCE_TYPE_METHODS(ImplType)
void set(void **storage, int64_t value) override
Set the value of the integer.
_QI_BOUNCE_TYPE_METHODS(ImplType)
void set(void **storage, double value) override
Set the value of the float.
_QI_BOUNCE_TYPE_METHODS(ImplType)