Quick comparison of types that can be safely promoted and/or converted to each other. More...
#include <Truncate.h>
Public Types | |
typedef ACE::If_Then_Else < USE_LEFT, LEFT, typename ACE::If_Then_Else< USE_RIGHT, RIGHT, void >::result_type > ::result_type | promote_type |
Public Member Functions | |
ACE_STATIC_CONSTANT (bool, USE_LEFT=((sizeof(LEFT) > sizeof(RIGHT)&&(Sign_Check< LEFT >::is_signed==1||Sign_Check< RIGHT >::is_signed==0))||(sizeof(LEFT)==sizeof(RIGHT)&&((Sign_Check< LEFT >::is_signed==1 &&Sign_Check< RIGHT >::is_signed==1)||(Sign_Check< LEFT >::is_signed==0 &&Sign_Check< RIGHT >::is_signed==0))))) | |
ACE_STATIC_CONSTANT (bool, USE_RIGHT=(sizeof(RIGHT) > sizeof(LEFT)&&(Sign_Check< RIGHT >::is_signed==1||Sign_Check< LEFT >::is_signed==0))) | |
ACE_STATIC_CONSTANT (bool, USABLE=(USE_LEFT||USE_RIGHT)) | |
Static Public Member Functions | |
static bool | greater_than (LEFT lhs, RIGHT rhs) |
Quick comparison of types that can be safely promoted and/or converted to each other.
The comparison operations provided by this structure perform no negative value checking, meaning it is not applicable to all types. Check the value of the USABLE
enumerator to determine if it applies to the types in question.
For internal use only.
This structure is not meant for general use.
Definition at line 296 of file Truncate.h.
typedef ACE::If_Then_Else< USE_LEFT, LEFT, typename ACE::If_Then_Else< USE_RIGHT, RIGHT, void>::result_type>::result_type ACE_Utils::Fast_Comparator< LEFT, RIGHT >::promote_type |
Definition at line 332 of file Truncate.h.
ACE_Utils::Fast_Comparator< LEFT, RIGHT >::ACE_STATIC_CONSTANT | ( | bool | , | |
USE_LEFT | = ((sizeof(LEFT) > sizeof(RIGHT)&&(Sign_Check< LEFT >::is_signed==1||Sign_Check< RIGHT >::is_signed==0))||(sizeof(LEFT)==sizeof(RIGHT)&&((Sign_Check< LEFT >::is_signed==1 &&Sign_Check< RIGHT >::is_signed==1)||(Sign_Check< LEFT >::is_signed==0 &&Sign_Check< RIGHT >::is_signed==0)))) | |||
) |
ACE_Utils::Fast_Comparator< LEFT, RIGHT >::ACE_STATIC_CONSTANT | ( | bool | , | |
USE_RIGHT | = (sizeof(RIGHT) > sizeof(LEFT)&&(Sign_Check< RIGHT >::is_signed==1||Sign_Check< LEFT >::is_signed==0)) | |||
) |
ACE_Utils::Fast_Comparator< LEFT, RIGHT >::ACE_STATIC_CONSTANT | ( | bool | , | |
USABLE | = (USE_LEFT||USE_RIGHT) | |||
) |
static bool ACE_Utils::Fast_Comparator< LEFT, RIGHT >::greater_than | ( | LEFT | lhs, | |
RIGHT | rhs | |||
) | [inline, static] |
Definition at line 334 of file Truncate.h.
{ // The explicit cast is assumed to change the type of rhs without // changing its value. return (static_cast<promote_type> (lhs) > static_cast<promote_type> (rhs)); }