framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces | Constant Groups | Functions
comparable.hpp File Reference

Serializable container comparison. More...

#include <framework/serializable/utility/interface.hpp>
#include <framework/serializable/utility/comparable.inl>

Go to the source code of this file.

Classes

struct  framework::serializable::comparable< Parent >
 Comparable template. More...
 

Namespaces

 framework
 Framework namespace.
 
 framework::serializable
 Serializable namespace.
 

Constant Groups

 framework
 Framework namespace.
 
 framework::serializable
 Serializable namespace.
 

Functions

template<typename LhsType , typename RhsType >
bool framework::serializable::less (LhsType const &lhs, RhsType const &rhs)
 Less than.
 
template<typename LhsType , typename RhsType >
bool framework::serializable::greater (LhsType const &lhs, RhsType const &rhs)
 Greater than.
 
template<typename LhsType , typename RhsType >
bool framework::serializable::less_or_equal (LhsType const &lhs, RhsType const &rhs)
 Less than or equal to.
 
template<typename LhsType , typename RhsType >
bool framework::serializable::greater_or_equal (LhsType const &lhs, RhsType const &rhs)
 Greater than or equal to.
 
template<typename LhsType , typename RhsType >
bool framework::serializable::equal (LhsType const &lhs, RhsType const &rhs)
 Equal to.
 
template<typename LhsType , typename RhsType >
bool framework::serializable::not_equal (LhsType const &lhs, RhsType const &rhs)
 Not equal.
 

Detailed Description

Serializable container comparison.

Provides a series of member-wise comparison free functions for member-wise serializable object comparisons. The templates provided here require only that the size of the container's value types match; no additional constraints are placed on the types or names associated with the values.

Value pair requirements:

Support is provided for a check member function in a value type's interface returning a boolean-comparable type, intended to allow these operators to continue to function properly in the presence of unset value types (ie: optional_value). When these members are present an unset value type is considered less than any set value type and equal to any unset value type.