Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:38:17

0001 /*-----------------------------------------------------------------------------+    
0002 Copyright (c) 2010-2010: Joachim Faulhaber
0003 +------------------------------------------------------------------------------+
0004    Distributed under the Boost Software License, Version 1.0.
0005       (See accompanying file LICENCE.txt or copy at
0006            http://www.boost.org/LICENSE_1_0.txt)
0007 +-----------------------------------------------------------------------------*/
0008 #ifndef BOOST_ICL_CONCEPT_COMPARABLE_HPP_JOFA_100921
0009 #define BOOST_ICL_CONCEPT_COMPARABLE_HPP_JOFA_100921
0010 
0011 #include <boost/utility/enable_if.hpp>
0012 #include <boost/icl/type_traits/is_icl_container.hpp>
0013 
0014 namespace boost{ namespace icl
0015 {
0016 
0017 //==============================================================================
0018 //= Equivalences and Orderings<Comparable>
0019 //==============================================================================
0020 template<class Type>
0021 inline typename enable_if<is_icl_container<Type>, bool>::type
0022 operator != (const Type& left, const Type& right)
0023 { return !(left == right); }
0024 
0025 template<class Type>
0026 inline typename enable_if<is_icl_container<Type>, bool>::type
0027 operator > (const Type& left, const Type& right)
0028 { return right < left; }
0029 
0030 /** Partial ordering which is induced by Compare */
0031 template<class Type>
0032 inline typename enable_if<is_icl_container<Type>, bool>::type
0033 operator <= (const Type& left, const Type& right)
0034 { return !(left > right); }
0035 
0036 template<class Type>
0037 inline typename enable_if<is_icl_container<Type>, bool>::type
0038 operator >= (const Type& left, const Type& right)
0039 { return !(left < right); }
0040 
0041 }} // namespace boost icl
0042 
0043 #endif
0044 
0045