ReactOS 0.4.16-dev-973-g9a0ff8b
msl::utilities::details::IntTraits< T > Class Template Reference

#include <safeint_internal.h>

Public Types

enum  {
  isSigned = ( (T)(-1) < 0 ) , is64Bit = ( sizeof(T) == 8 ) , is32Bit = ( sizeof(T) == 4 ) , is16Bit = ( sizeof(T) == 2 ) ,
  is8Bit = ( sizeof(T) == 1 ) , isLT32Bit = ( sizeof(T) < 4 ) , isLT64Bit = ( sizeof(T) < 8 ) , isInt8 = ( sizeof(T) == 1 && isSigned ) ,
  isUint8 = ( sizeof(T) == 1 && !isSigned ) , isInt16 = ( sizeof(T) == 2 && isSigned ) , isUint16 = ( sizeof(T) == 2 && !isSigned ) , isInt32 = ( sizeof(T) == 4 && isSigned ) ,
  isUint32 = ( sizeof(T) == 4 && !isSigned ) , isInt64 = ( sizeof(T) == 8 && isSigned ) , isUint64 = ( sizeof(T) == 8 && !isSigned ) , bitCount = ( sizeof(T)*8 ) ,
  isBool = NumericType<T>::isBool
}
 

Static Public Attributes

static const T maxInt = isSigned ? ((T)~((T)1 << (T)(bitCount-1))) : ((T)(~(T)0))
 
static const T minInt = isSigned ? ((T)((T)1 << (T)(bitCount-1))) : ((T)0)
 

Detailed Description

template<typename T>
class msl::utilities::details::IntTraits< T >

Definition at line 57 of file safeint_internal.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename T >
anonymous enum
Enumerator
isSigned 
is64Bit 
is32Bit 
is16Bit 
is8Bit 
isLT32Bit 
isLT64Bit 
isInt8 
isUint8 
isInt16 
isUint16 
isInt32 
isUint32 
isInt64 
isUint64 
bitCount 
isBool 

Definition at line 61 of file safeint_internal.h.

62 {
63#pragma warning(suppress:4804)
64 isSigned = ( (T)(-1) < 0 ),
65 is64Bit = ( sizeof(T) == 8 ),
66 is32Bit = ( sizeof(T) == 4 ),
67 is16Bit = ( sizeof(T) == 2 ),
68 is8Bit = ( sizeof(T) == 1 ),
69 isLT32Bit = ( sizeof(T) < 4 ),
70 isLT64Bit = ( sizeof(T) < 8 ),
71 isInt8 = ( sizeof(T) == 1 && isSigned ),
72 isUint8 = ( sizeof(T) == 1 && !isSigned ),
73 isInt16 = ( sizeof(T) == 2 && isSigned ),
74 isUint16 = ( sizeof(T) == 2 && !isSigned ),
75 isInt32 = ( sizeof(T) == 4 && isSigned ),
76 isUint32 = ( sizeof(T) == 4 && !isSigned ),
77 isInt64 = ( sizeof(T) == 8 && isSigned ),
78 isUint64 = ( sizeof(T) == 8 && !isSigned ),
79 bitCount = ( sizeof(T)*8 ),
80#pragma warning(suppress:4804)
82 };
boolean suppress
Definition: jpeglib.h:1006
#define T
Definition: mbstring.h:31
#define warning(s)
Definition: debug.h:83

Member Data Documentation

◆ maxInt

template<typename T >
const T msl::utilities::details::IntTraits< T >::maxInt = isSigned ? ((T)~((T)1 << (T)(bitCount-1))) : ((T)(~(T)0))
static

Definition at line 87 of file safeint_internal.h.

◆ minInt

template<typename T >
const T msl::utilities::details::IntTraits< T >::minInt = isSigned ? ((T)((T)1 << (T)(bitCount-1))) : ((T)0)
static

Definition at line 88 of file safeint_internal.h.


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