_set_operators.h

00001 // This is an implementation file which
00002 // is intended to be included multiple times with different _STLP_ASSOCIATIVE_CONTAINER
00003 // setting
00004 
00005 template <class _Key, class _Compare, class _Alloc>
00006 inline bool _STLP_CALL operator==(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x, 
00007                        const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00008   return __x.size() == __y.size() &&
00009     equal(__x.begin(), __x.end(), __y.begin());
00010 }
00011 
00012 template <class _Key, class _Compare, class _Alloc>
00013 inline bool _STLP_CALL operator<(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x, 
00014                       const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00015   return lexicographical_compare(__x.begin(), __x.end(), 
00016                                  __y.begin(), __y.end());
00017 }
00018 
00019 #ifdef _STLP_USE_SEPARATE_RELOPS_NAMESPACE
00020 
00021 template <class _Key, class _Compare, class _Alloc>
00022 inline bool _STLP_CALL operator!=(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x, 
00023                        const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00024   return !(__x == __y);
00025 }
00026 
00027 template <class _Key, class _Compare, class _Alloc>
00028 inline bool _STLP_CALL operator>(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x, 
00029                       const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00030   return __y < __x;
00031 }
00032 
00033 template <class _Key, class _Compare, class _Alloc>
00034 inline bool _STLP_CALL operator<=(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x, 
00035                        const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00036   return !(__y < __x);
00037 }
00038 
00039 template <class _Key, class _Compare, class _Alloc>
00040 inline bool _STLP_CALL operator>=(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x, 
00041                        const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00042   return !(__x < __y);
00043 }
00044 #endif /* _STLP_USE_SEPARATE_RELOPS_NAMESPACE */
00045 
00046 #ifdef _STLP_FUNCTION_TMPL_PARTIAL_ORDER
00047 
00048 template <class _Key, class _Compare, class _Alloc>
00049 inline void _STLP_CALL swap(_STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x, 
00050                  _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00051   __x.swap(__y);
00052 }
00053 
00054 #endif /* _STLP_FUNCTION_TMPL_PARTIAL_ORDER */

Generated on Mon Jun 5 10:20:47 2006 for Intelligence.kdevelop by  doxygen 1.4.6