Helper classes and functions for comparisons.
Classes | |
class | CompareTemplate< ALLOW_UNDEFINED, EQ, OPERATOR_RANK > |
class | DefaultCompare |
class | EqualityCompare |
class | CStringCompare |
class | RefCompare< COW, IS_INTERFACE > |
class | RefCompare< true, false > |
class | RefCompare< true, true > |
Namespaces | |
maxon | |
maxon::details | |
Enumerations | |
enum class | COMPARERESULT { LESS , EQUAL , GREATER , INCOMPARABLE } |
enum class | EQUALITY { SHALLOW , DEEP } |
Functions | |
enum maxon::COMPARERESULT | MAXON_ENUM_ORDERED_LIST (COMPARERESULT, "net.maxon.datatype.enum.compareresult", EARLY) |
enum maxon::EQUALITY | MAXON_ENUM_LIST (EQUALITY, "net.maxon.datatype.enum.equality", EARLY) |
template<Bool ALLOW_UNDEFINED = false> | |
Bool | LexicographicalGreaterThan () |
template<Bool ALLOW_UNDEFINED = false, typename T1 , typename... TN> | |
Bool | LexicographicalGreaterThan (const T1 &a1, const T1 &b1, const TN &... ab) |
template<Bool ALLOW_UNDEFINED = false> | |
Bool | LexicographicalLessThan () |
template<Bool ALLOW_UNDEFINED = false, typename T1 , typename... TN> | |
Bool | LexicographicalLessThan (const T1 &a1, const T1 &b1, const TN &... ab) |
template<Bool ALLOW_UNDEFINED = false> | |
COMPARERESULT | LexicographicalCompare () |
template<Bool ALLOW_UNDEFINED = false, typename T1 , typename... TN> | |
COMPARERESULT | LexicographicalCompare (const T1 &a1, const T1 &b1, const TN &... ab) |
Variables | |
LESS | |
EQUAL | |
GREATER | |
INCOMPARABLE | |
SHALLOW | |
DEEP | |
const COMPARERESULT | g_compareResultIncomparable |
LESS |
result is less than
EQUAL |
result is equal
GREATER |
result is greater than
INCOMPARABLE |
values are incomparable (either a compare function doesn't exist, or we have a partial order)
SHALLOW |
A shallow equality-test shall be done. For pointers or (non-copy-on-write) references the object identity (pointer value) is used.
DEEP |
< A deep equality-test shall be done. For pointers or (non-copy-on-write) references the referenced objects are compared for equality.